在安卓界面的设计过程中,不免要使用许多图标,例如返回,设置图标等,本文记录图标的一些使用。
一、开源库的使用
在我设计界面的时候,想要实现一个带图标的按钮,那么如何获取需要的图标成为一个问题。
刚写代码的小白对GitHub并不熟悉,但是它真的是强大。使用一些开源的库文件,可以对项目开发起到很大的帮助。首先拉出一个强大的连接,聚集了各类GitHub上的开源项目。Github上受欢迎的Android 开源 UI。
其中,我使用这个库,material-icon-lib,我也是刚开始用github,所以找一个使用说明比较详细的,发现真的好用,添加依赖之后,更行一下gradle,然后就可以调用库了。
二、Android studio的图库插件
在开发环境中安装插件,然后就可以按需要使用图标啦。首先是安装插件:file->setting,点击plugin,如下
在搜索中输入Android Material Design Icon Generator,安装插件,然后重启软件。
然后在res->drawable右键new,最下面能看到material design icon,点击。(快捷键,鼠标放至res->drawable处,ctrl+alt+m),在界面中选择图标,设置颜色和大小,名称,保存。然后就可以在需要用图标的位置通过R.drawable.ic_name引用这个图。
三、图标按钮的实现
有了可用图标之后,现在制作一个带图标和文字的按钮。使用textview控件可以很容易的实现。首先在layout文件中添加一个textview。
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentStart="true"
android:gravity="center"
android:text="TextView" />
然后在其activity中引用这个控件,并添加图标。
public class MainActivity extends AppCompatActivity {
private TextView btn_icon;
private Drawable drawable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//按钮关联
btn_icon = findViewById(R.id.btn_icon);
drawable = getResources().getDrawable(R.drawable.ic_settings_36dp);
drawable.setBounds(0,0,drawable.getMinimumWidth(),drawable.getMinimumHeight()); //设置图片的大小
btn_icon.setCompoundDrawables(drawable,null,null,null);
btn_icon.setText("设置");
btn_icon.setTextSize(32);
}
}
实现效果如下所示。
如实想实现一个较长的按钮,并且改变图标与文字之间的文字,可以通过改变图片的起始位置以及文字与parent的距离,即setpadding实现。在上添加这两行代码,并让布局中的textview宽带设定较大的值。
drawable.setBounds(200,0,200+drawable.getMinimumWidth(),drawable.getMinimumHeight());
btn_icon.setPadding(280+drawable.getMinimumWidth(),0,410,0);
可以得到这个效果
四、小结
本部分记录了使用图标的两种方式,然后用textview实现的一个图形按钮。它与普通按钮一样可以通过
btn_icon.setOnClickListener(systemSet);
进行点击事件的监听。
初写博文,不足之处敬请谅解。如果有问题,欢迎问我。