TextView的drawableLeft與文字一起居中顯示(以及程式碼設定drawableLeft)
阿新 • • 發佈:2019-01-23
網上一搜全是自定義控制元件,其實去看看TextView的屬性,就能發現,解決這個問題,直接xml檔案中就能搞定,程式碼如下:
<!-- 不明白的屬性請自行查閱資料--> <TextView android:id="@+id/tv_finish" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal|center_vertical" android:gravity="center" android:adjustViewBounds="true" android:drawableLeft="@drawable/ic_finish" android:text="完成" />
TextView動態設定旁邊圖片,可使用如下程式碼:
TextView textView = (TextView)findViewById(R.id.tv_finish); Drawable drawable= getResources().getDrawable(R.drawable.ic_finish); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight());//這句一定要加 textView.setCompoundDrawables(drawable,null,null,null);//setCompoundDrawables用來設定圖片顯示在文字的哪一端
效果圖如下:
注:
所有安卓開發中用到圖片配文字這種,都可以直接用TextView來實現,TextView提供的drawableLeft,drawableRight,drawableTop,drawableBottom可以實現圖片環繞在文字左右上下。佈局跟程式碼跟同上。