先看要实现的效果图
对于老鸟来说这种有很多实现方式,我们的是原始的按钮,领导觉得不好看,要让我做成如图的效果(我并不是搞安卓的,现学现卖了)
查了好多资料基本都是要重写imageButton或者imagView,因为只用原始的imageButton的话,里面的文字就加不进去;而只用imageView的话文字上面的那个小图标又放不到中间,只能放在上下左右的位置;百度的重写imageButton和imageView写的又不清楚,不知道怎么搞的就是没效果,app闪退,不得已把button换成了textView,最后用imageView和textView实现的,只需要在activity里面修改一下就行了,其他文件不需要修改,但是根据之前用HTML布局经验,这种方法可能在某些条件下位置会有问题,大家做个参考就行了。
<ImageView
android:id="@+id/buttonPutaway"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_gravity="center"
android:paddingTop="60dp"
android:paddingBottom="60dp"
android:onClick="BtnFrmShowPathway"
android:src="@drawable/sj"
android:background="@drawable/aa"
/>
<TextView
android:id="@+id/buttonPutawayText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/buttonPutaway"
android:layout_alignTop="@+id/buttonPutaway"
android:layout_alignRight="@+id/buttonPutaway"
android:layout_alignBottom="@+id/buttonPutaway"
android:layout_margin="1dp"
android:layout_gravity="center"
android:layout_marginTop="-50dp"
android:layout_marginBottom="40dp"
android:gravity="center"
android:text="Hello"
android:textColor="#000000" />
imageView里面没什么好说的,就是实现了背景和背景上面小图标的布局;主要是textView里面把文字加在小图标下面的部分操作,android:layout_marginTop="-50dp"这里如果是0dp的话,那么文字就是在imageView控件的下方,设置成负值就能在视觉上实现文字在imageView里面了,虽然方法比较抽象,但是对于我这种菜鸟来说已经够用了,哈哈~~~