android 動態設定drawableTop,drawableLeft,drawableRight,drawableBottom.
阿新 • • 發佈:2019-01-31
android 動態設定drawableTop。
通常情況下我們都是在佈局檔案中設定drawableTop,drawableLeft,drawableRight,drawableBottom.
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:drawableTop="@drawable/height_icon"
android:text="@string/height"
android:layout_marginTop="20dp"
android:textSize="30sp"
android:textColor="@color/yellow"
/>
但是我們也會用帶在程式碼當中動態設定的情況:
TextView mTitle = (TextView) view.findViewById(R.id.title);
Drawable top = getActivity().getResources().getDrawable(R.drawable.weight_icon);// 獲取res下的圖片drawable
top.setBounds(0, 0, top.getMinimumWidth(), top.getMinimumHeight());// 一定要設定setBounds();
// 呼叫setCompoundDrawables(Drawable left, Drawable top,Drawable right, Drawable bottom)方法。(有四個引數,不需要設定的引數傳null)
mTitle.setCompoundDrawables(null, top, null, null);
通常情況下我們都是在佈局檔案中設定drawableTop,drawableLeft,drawableRight,drawableBottom.
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:drawableTop="@drawable/height_icon"
android:text="@string/height"
android:layout_marginTop="20dp"
android:textSize="30sp"
android:textColor="@color/yellow"
/>
但是我們也會用帶在程式碼當中動態設定的情況:
TextView mTitle = (TextView) view.findViewById(R.id.title);
Drawable top = getActivity().getResources().getDrawable(R.drawable.weight_icon);// 獲取res下的圖片drawable
top.setBounds(0, 0, top.getMinimumWidth(), top.getMinimumHeight());// 一定要設定setBounds();
// 呼叫setCompoundDrawables(Drawable left, Drawable top,Drawable right, Drawable bottom)方法。(有四個引數,不需要設定的引數傳null)
mTitle.setCompoundDrawables(null, top, null, null);