欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android 改變圖標原有顏色和搜索框的實例代碼

 更新時間:2017年09月19日 09:34:15   作者:切切歆語  
讓Android也能有iOS那么方便的圖片色調(diào)轉(zhuǎn)換,就像同一個圖標,但是有多個地方使用,并且顏色不一樣,就可以用這個方法了。 本文實現(xiàn)TextView圖片和文字居中,鍵盤搜索功能,具體實現(xiàn)代碼大家跟隨腳本之家小編看看吧

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

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

來看看效果圖:

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

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

搜索框布局:

<!-- 
   搜索圖標設置 左邊 
   android:drawableLeft="@mipmap/icon_search" 
   android:drawablePadding="5dp" 圖標和文字的間距 
   右邊 
   android:drawableRight="@mipmap/round_close" 
   android:paddingRight="8dp" 
   android:imeOptions="actionSearch" 設置成搜索按鈕 
  --> 
  <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="輸入搜索相關內(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:(文字圖標居中)

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設置的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 改變圖標原有顏色和搜索框的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • Android編程之菜單的實現(xiàn)方法實例詳解

    Android編程之菜單的實現(xiàn)方法實例詳解

    這篇文章主要介紹了Android編程之菜單的實現(xiàn)方法,結(jié)合實例形式較為詳細的分析了上下文菜單、選項菜單和子菜單的實現(xiàn)技巧,需要的朋友可以參考下
    2015-11-11
  • Android實現(xiàn)圖片點擊放大

    Android實現(xiàn)圖片點擊放大

    這篇文章主要為大家詳細介紹了Android實現(xiàn)圖片點擊放大,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • Android剪貼板用法詳解

    Android剪貼板用法詳解

    這篇文章主要介紹了Android剪貼板用法詳解,以實例的形式對Android中剪貼板的各類傳值方法做了較為詳細的講述,需要的朋友可以參考下
    2014-10-10
  • 基于Android實現(xiàn)保存圖片到本地并可以在相冊中顯示出來

    基于Android實現(xiàn)保存圖片到本地并可以在相冊中顯示出來

    App應用越來越人性化,不僅界面優(yōu)美而且服務也很多樣化,操作也非常方便。通過本篇文章給大家介紹基于Android實現(xiàn)保存圖片到本地并可以在相冊中顯示出來,對android保存圖片相關知識感興趣的朋友一起學習吧
    2015-12-12
  • Android用文件存儲數(shù)據(jù)的方法

    Android用文件存儲數(shù)據(jù)的方法

    這篇文章主要為大家詳細介紹了Android用文件存儲數(shù)據(jù)的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Android Studio Gradle 更換阿里云鏡像的方法

    Android Studio Gradle 更換阿里云鏡像的方法

    這篇文章主要介紹了Android Studio Gradle 更換阿里云鏡像的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • textView 添加超鏈接(兩種實現(xiàn)方式)

    textView 添加超鏈接(兩種實現(xiàn)方式)

    在textView添加超鏈接,有兩種方式,第一種通過HTML格式化你的網(wǎng)址,一種是設置autolink,讓系統(tǒng)自動識別超鏈接,下面為大家介紹下這兩種方法的實現(xiàn)
    2013-06-06
  • Android嵌套滾動NestedScroll的實現(xiàn)了解一下

    Android嵌套滾動NestedScroll的實現(xiàn)了解一下

    嵌套滾動已經(jīng)算一個比較常見的特效了,這篇文章主要介紹了Android嵌套滾動NestedScroll的實現(xiàn)了解一下,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Android實現(xiàn)網(wǎng)易Tab分類排序控件實現(xiàn)

    Android實現(xiàn)網(wǎng)易Tab分類排序控件實現(xiàn)

    這篇文章主要為大家詳細介紹了Android仿網(wǎng)易Tab分類排序控件的實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Android編程學習之抽象類AbsListView用法實例分析

    Android編程學習之抽象類AbsListView用法實例分析

    這篇文章主要介紹了Android編程學習之抽象類AbsListView用法,較為詳細的分析了抽象類AbsListView的功能、結(jié)構(gòu)、定義及使用注意事項等,需要的朋友可以參考下
    2015-10-10

最新評論