亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中怎么通過自定義ImageView添加文字說明

發布時間:2021-06-26 17:09:24 來源:億速云 閱讀:135 作者:Leah 欄目:移動開發

本篇文章為大家展示了Android中怎么通過自定義ImageView添加文字說明,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

MyImageTextViewNew.java

public class MyImageTextViewNew extends LinearLayout {

 private ImageView mImageView = null;
 private TextView mTextView = null;
 private int imageId;
 private int textId, textColorId;

 public MyImageTextViewNew(Context context) {
  this(context, null);
 }

 public MyImageTextViewNew(Context context, @Nullable AttributeSet attrs) {
  this(context, attrs, 0);
 }

 public MyImageTextViewNew(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
  super(context, attrs, defStyleAttr);
  this.setOrientation(LinearLayout.VERTICAL);//設置垂直排序
  this.setGravity(Gravity.CENTER);//設置居中
  if (mImageView == null) {
   mImageView = new ImageView(context);
  }
  if (mTextView == null) {
   mTextView = new TextView(context);
  }
  if (attrs == null)
   return;
  int count = attrs.getAttributeCount();
  for (int i = 0; i < count; i++) {
   String attrName = attrs.getAttributeName(i);//獲取屬性名稱
   //根據屬性獲取資源ID
   switch (attrName) {
    //顯示的圖片
    case "image":
     imageId = attrs.getAttributeResourceValue(i, 0);
     break;
    //顯示的文字
    case "text":
     textId = attrs.getAttributeResourceValue(i, 0);
     break;
    //顯示的文字的顏色
    case "textColor":
     textColorId = attrs.getAttributeResourceValue(i, 0);
     break;
   }
  }
  init();
 }

 /**
  * 初始化狀態
  */
 private void init() {
  this.setText(textId);
  mTextView.setGravity(Gravity.CENTER);//字體居中
  this.setTextColor(textColorId);
  this.setImgResource(imageId);
  addView(mImageView);//將圖片控件加入到布局中
  addView(mTextView);//將文字控件加入到布局中
 }

 /**
  * 設置顯示的圖片
  *
  * @param resourceID 圖片ID
  */
 private void setImgResource(int resourceID) {
  if (resourceID == 0) {
   this.mImageView.setImageResource(0);
  } else {
   this.mImageView.setImageResource(resourceID);
  }
 }

 /**
  * 設置顯示的文字
  *
  * @param text
  */
 public void setText(int text) {
  this.mTextView.setText(text);
 }

 /**
  * 設置字體顏色(默認為黑色)
  *
  * @param color
  */
 private void setTextColor(int color) {
  if (color == 0) {
   this.mTextView.setTextColor(Color.BLACK);
  } else {
   this.mTextView.setTextColor(getResources().getColor(color));
  }
 }

}

簡單解釋下..實際上就是在LinearLayout布局中添加ImageView和TextView

這個View也比較簡單,代碼中也有部分簡易的說明.

下面可能還需要一個屬性文件

imageText.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

 <declare-styleable name="imageText">
  <attr name="image" format="integer" />
  <attr name="text" format="integer" />
  <attr name="textColor" format="integer" />
 </declare-styleable>
 
</resources>

Android中怎么通過自定義ImageView添加文字說明

配置文件存放位置

下面展示使用方法

Android中怎么通過自定義ImageView添加文字說明

上述內容就是Android中怎么通過自定義ImageView添加文字說明,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

保靖县| 西贡区| 金昌市| 黄平县| 二手房| 吉安市| 石首市| 娱乐| 岚皋县| 额敏县| 崇左市| 汪清县| 富平县| 大姚县| 克什克腾旗| 定边县| 崇左市| 厦门市| 南丹县| 湄潭县| 凤冈县| 简阳市| 双城市| 资溪县| 应城市| 兴安盟| 琼海市| 苏州市| 乌兰察布市| 海盐县| 靖宇县| 兴安县| 尼勒克县| 铜川市| 临汾市| 犍为县| 东安县| 兴业县| 连云港市| 宁强县| 金坛市|