全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android 改变图标原有颜色和搜索框的实例代码

图标改变颜色:Drawable的变色,让Android也能有iOS那么方便的图片色调转换,就像同一个图标,但是有多个地方使用,并且颜色不一样,就可以用这个方法了。

搜索框: 一般是EditText实现,本文 实现 TextView图片和文字居中,键盘搜索。

来看看效果图:

 图标改变颜色:第一个界面的左边(二维码)和右边(更多)两个实现,我放进去的图片是黑色的,显示出来是白色的。         

搜索框:第一个界面的图片和文字居中,还可以设置间距,第二个见面搜索设置键盘搜索按钮,点击搜索监听事件,清除内容的图标。

搜索框布局:

<!-- 
   搜索图标设置 左边 
   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" 
   /> 

键盘监听:

searchText.setOnEditorActionListener(new TextView.OnEditorActionListener() { 
   @Override 
   public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
    if ((actionId == 0 || actionId == 3) && event != null) { 
             //提示搜索内容 
     Toast.makeText(SearchActivity.this,searchText.getText().toString(),Toast.LENGTH_LONG).show(); 
     //可以跳转搜索页面 
     /* 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="输入搜索相关内容" 
   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

总结

以上所述是小编给大家介绍的Android 改变图标原有颜色和搜索框的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# android  # 图标颜色  # 搜索框  # Android如何动态改变App桌面图标  # Android实现动态改变app图标的示例代码  # Android实现修改状态栏背景、字体和图标颜色的方法  # Android 修改app图标和名称的方法  # Android App更改应用的图标的实现方法  # android开发修改状态栏背景色和图标颜色的示例  # Android改变ExpandableListView的indicator图标实现方法  # Android动态修改应用图标与名称的方法实例  # 第一个  # 小编  # 就像  # 相关内容  # 还可以  # 多个  # 在此  # 可以用  # 第二个  # 给大家  # 能有  # 来看看  # 自定义  # 点击下载  # 跳转  # 首页  # 所述  # 给我留言  # 感谢大家  # 设置成 


相关文章: 红河网站制作公司,红河事业单位身份证如何上传?  如何访问已购建站主机并解决登录问题?  建站之星安装模板失败:服务器环境不兼容?  ,网页ppt怎么弄成自己的ppt?  如何用5美元大硬盘VPS安全高效搭建个人网站?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  如何续费美橙建站之星域名及服务?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  建站之星在线版空间:自助建站+智能模板一键生成方案  建站之星后台管理:高效配置与模板优化提升用户体验  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  已有域名建站全流程解析:网站搭建步骤与建站工具选择  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  建站之星伪静态规则如何设置?  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  c# 在高并发场景下,委托和接口调用的性能对比  如何快速上传建站程序避免常见错误?  小型网站制作HTML,*游戏网站怎么搭建?  网站制作服务平台,有什么网站可以发布本地服务信息?  如何选择香港主机高效搭建外贸独立站?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?  怀化网站制作公司,怀化新生儿上户网上办理流程?  非常酷的网站设计制作软件,酷培ai教育官方网站?  微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  如何使用Golang table-driven基准测试_多组数据测量函数效率  网站企业制作流程,用什么语言做企业网站比较好?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  学校为何禁止电信移动建设网站?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  建站之星后台密码遗忘如何找回?  建站上市公司网站建设方案与SEO优化服务定制指南  如何在IIS中配置站点IP、端口及主机头?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何高效利用亚马逊云主机搭建企业网站?  成都网站制作报价公司,成都工业用气开户费用?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  建站之星免费版是否永久可用?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  大连网站设计制作招聘信息,大连投诉网站有哪些?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  宝塔建站无法访问?如何排查配置与端口问题?  如何在宝塔面板中创建新站点?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  如何解决ASP生成WAP建站中文乱码问题?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  设计网站制作公司有哪些,制作网页教程? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。