国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android 改變圖標(biāo)原有顏色和搜索框的實例代碼

2019-12-12 02:01:33
字體:
供稿:網(wǎng)友

圖標(biāo)改變顏色:Drawable的變色,讓Android也能有iOS那么方便的圖片色調(diào)轉(zhuǎn)換,就像同一個圖標(biāo),但是有多個地方使用,并且顏色不一樣,就可以用這個方法了。

搜索框: 一般是EditText實現(xiàn),本文 實現(xiàn) TextView圖片和文字居中,鍵盤搜索。

來看看效果圖:

 圖標(biāo)改變顏色:第一個界面的左邊(二維碼)和右邊(更多)兩個實現(xiàn),我放進去的圖片是黑色的,顯示出來是白色的。         

搜索框:第一個界面的圖片和文字居中,還可以設(shè)置間距,第二個見面搜索設(shè)置鍵盤搜索按鈕,點擊搜索監(jiān)聽事件,清除內(nèi)容的圖標(biāo)。

搜索框布局:

<!--    搜索圖標(biāo)設(shè)置 左邊    android:drawableLeft="@mipmap/icon_search"    android:drawablePadding="5dp" 圖標(biāo)和文字的間距    右邊    android:drawableRight="@mipmap/round_close"    android:paddingRight="8dp"    android:imeOptions="actionSearch" 設(shè)置成搜索按鈕   -->   <EditText    android:id="@+id/search_text"    android:layout_width="0dp"    android:layout_weight="1"    android:layout_height="30dp"    android:hint="輸入要搜索的商品"    android:background="@drawable/search_gray"    android:layout_marginTop="10dp"    android:layout_marginLeft="9dp"    android:textSize="12sp"    android:drawableLeft="@mipmap/icon_search"    android:paddingLeft="9dp"    android:drawablePadding="5dp"    android:drawableRight="@mipmap/round_close"    android:paddingRight="8dp"    android:imeOptions="actionSearch"    android:maxLines="1"    android:singleLine="true"    /> 

鍵盤監(jiān)聽:

searchText.setOnEditorActionListener(new TextView.OnEditorActionListener() {    @Override    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {     if ((actionId == 0 || actionId == 3) && event != null) {              //提示搜索內(nèi)容      Toast.makeText(SearchActivity.this,searchText.getText().toString(),Toast.LENGTH_LONG).show();      //可以跳轉(zhuǎn)搜索頁面      /* Intent intent= new Intent(SearchActivity.this,SearchWebViewActivity.class);      intent.putExtra("model",model);      intent.putExtra("search",searchText.getText().toString());      startActivity(intent);      finish();*/     }     return false;    }   }); 

首頁布局:

<LinearLayout   android:layout_width="match_parent"   android:layout_height="wrap_content"   android:background="@color/colorPrimary"   android:minHeight="45dp"   android:orientation="horizontal"   android:gravity="center_vertical"   >   <ImageButton    android:id="@+id/home_left_scan"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:paddingRight="19dp"    android:paddingTop="3dp"    android:paddingBottom="3dp"    android:paddingLeft="11dp"    android:layout_centerVertical="true"    android:background="#00000000"    />   <com.zhangqie.searchbox.view.DrawableTextView    android:id="@+id/home_search"    android:layout_width="match_parent"    android:layout_height="28dp"    android:layout_weight="1"    android:background="@drawable/search_view_background"    android:gravity="center_vertical"    android:maxLines="1"    android:text="輸入搜索相關(guān)內(nèi)容"    android:drawableLeft="@mipmap/icon_search"    android:textSize="12sp"    android:drawablePadding="11dp"    />   <ImageButton    android:id="@+id/home_right_more"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_centerVertical="true"    android:layout_alignParentRight="true"    android:paddingRight="15dp"    android:paddingTop="3dp"    android:paddingBottom="3dp"    android:paddingLeft="15dp"    android:background="#00000000"    />  </LinearLayout> 

自定義DrawableTextView:(文字圖標(biāo)居中)

public class DrawableTextView extends TextView {  public DrawableTextView(Context context, AttributeSet attrs,        int defStyle) {   super(context, attrs, defStyle);  }  public DrawableTextView(Context context, AttributeSet attrs) {   super(context, attrs);  }  public DrawableTextView(Context context) {   super(context);  }  @Override  protected void onDraw(Canvas canvas) {   Drawable[] drawables = getCompoundDrawables();   // 得到drawableLeft設(shè)置的drawable對象   Drawable leftDrawable = drawables[0];   if (leftDrawable != null) {    // 得到leftDrawable的寬度    int leftDrawableWidth = leftDrawable.getIntrinsicWidth();    // 得到drawable與text之間的間距    int drawablePadding = getCompoundDrawablePadding();    // 得到文本的寬度    int textWidth = (int) getPaint().measureText(getText().toString().trim());    int bodyWidth = leftDrawableWidth + drawablePadding + textWidth;    canvas.save();    canvas.translate((getWidth() - bodyWidth) / 2, 0);   }   super.onDraw(canvas);  } } 

有需要的朋友點擊下載源碼哦!

https://github.com/DickyQie/android-basic-control/tree/search-box

總結(jié)

以上所述是小編給大家介紹的Android 改變圖標(biāo)原有顏色和搜索框的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 安溪县| 清丰县| 镇巴县| 阿鲁科尔沁旗| 万年县| 鄯善县| 新巴尔虎右旗| 双鸭山市| 龙里县| 昭苏县| 衢州市| 大新县| 双流县| 揭西县| 延津县| 丽水市| 夏河县| 鄢陵县| 砚山县| 双鸭山市| 廉江市| 霸州市| 砀山县| 腾冲县| 长岛县| 盐边县| 通许县| 康乐县| 长顺县| 安阳市| 本溪市| 修水县| 锡林浩特市| 祁东县| 扬州市| 阿克陶县| 吉安市| 舟山市| 阿荣旗| 巨鹿县| 新野县|