- 浏览: 83108 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
lijh:
[*][url][/url][flash=200,200][/ ...
Android拦截HOME按键 -
ccnu_ouy520:
有人能详细一点吗?
如何获取Android手机中所有的短信 -
ccnu_ouy520:
写的挺好的,我也看了这篇文章 有几个问题
这个getCont ...
如何获取Android手机中所有的短信 -
guobosheng:
楼主,我只想拦截home键,不想屏蔽它,要怎么改啊?
Android拦截HOME按键 -
aking86:
latty 写道不知 你为何屏蔽Home键?解决什么方面的问题 ...
Android拦截HOME按键
自定义控件 TitleBar
实现步骤:
1.先写好一个公共的自定义控件布局文件 custom_widget.xml 2.在其它布局文件里引用自定义控件(PublicTitleBar) activity_custom.xml 3.写自定义控件的类,主要是提供一些方法 PublicTitleBar.java 4.在 activity 里面设置自定义控件 文字/点击事件等 MainActivity.java
先写好一个公共的自定义控件布局文件 custom_widget.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FFF000"> <!-- org.aking86.test.userdefinedwidget.MyWidget --> <TextView android:id="@+id/tvTitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="@string/title" tools:context=".MainActivity" /> <Button android:id="@+id/btnBack" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:text="@string/back" /> <Button android:id="@+id/btnOK" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="@string/ok" /> </RelativeLayout>
在其它布局文件里引用自定义控件(PublicTitleBar) activity_custom.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<org.aking86.test.userdefinedwidget.PublicTitleBar
android:id="@+id/pub_titlebar"
android:layout_width="fill_parent"
android:layout_height="@dimen/pub_titlebar_height" />
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/pub_titlebar"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/linearLayout1"
android:layout_marginLeft="10dp"
android:layout_marginTop="32dp" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="5"
android:hint="@string/entry_the_title" >
<requestFocus />
</EditText>
<Button
android:id="@+id/btnSetTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/settitle" />
</LinearLayout>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/linearLayout2"
android:layout_alignParentTop="true"
android:layout_marginLeft="48dp"
android:layout_marginTop="200dp"
android:text="@string/hello_world"
tools:context=".MainActivity" />
</RelativeLayout>
写自定义控件的类,主要是提供一些方法 PublicTitleBar.java
package org.aking86.test.userdefinedwidget; import android.content.Context; import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.View; import android.widget.Button; import android.widget.RelativeLayout; import android.widget.TextView; public class PublicTitleBar extends RelativeLayout { private View view; private Button btnBack, btnOK; private TextView tvTitle; Context context; public PublicTitleBar(Context context) { super(context); this.context = context; initLayoutInflater(); } public PublicTitleBar(Context context, AttributeSet attrs) { super(context, attrs); this.context = context; initLayoutInflater(); } public PublicTitleBar(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); this.context = context; initLayoutInflater(); } private void initLayoutInflater() { LayoutInflater lInflater = (LayoutInflater) getContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); // view = lInflater.inflate(R.layout.custom_widget, this); initView(); } private void initView() { btnBack = (Button) view.findViewById(R.id.btnBack); btnOK = (Button) view.findViewById(R.id.btnOK); tvTitle = (TextView) view.findViewById(R.id.tvTitle); } public void setTitle (String text) { tvTitle.setText(text); } @Override public void setOnClickListener (OnClickListener lsn) { btnBack.setOnClickListener(lsn); btnOK.setOnClickListener(lsn); tvTitle.setOnClickListener(lsn); } }
在 activity 里面设置自定义控件 文字/点击事件等
/** * 设置 自定义控件 */ private void setPublicTitleBar() { PublicTitleBar titleBar = (PublicTitleBar) findViewById(R.id.pub_titlebar); titleBar.setTitle ("Welcome...."); titleBar.setOnClickListener (new OnClickListener() { @Override public void onClick(View v) { switch (v.getId()) { case R.id.btnBack: Toast.makeText(getBaseContext(), "btnBack", Toast.LENGTH_SHORT).show(); break; case R.id.btnOK: Toast.makeText(getBaseContext(), "btnOK", Toast.LENGTH_SHORT).show(); break; case R.id.tvTitle: Toast.makeText(getBaseContext(), "Title...", Toast.LENGTH_SHORT).show(); break; default: Toast.makeText(getBaseContext(), "default...", Toast.LENGTH_SHORT).show(); break; } } }); }
- UserDefinedWidget.zip (648.5 KB)
- 下载次数: 76
发表评论
-
demo-tel
2013-01-21 00:18 0Demo-Tel PhoneStateListener ... -
mobile
2012-12-21 01:21 0mobile -
android学习笔记之Base64编码
2012-12-10 23:31 0Base64 http://blog.sina.com. ... -
Android中对图像进行Base64编码
2012-12-10 23:22 0Android中对图像进行Base64 ... -
android中json转换成List<Map>
2012-11-20 01:07 0android中json转换成List<Map&g ... -
ratingBar demo
2012-10-18 23:54 1588关于 ratingBar 参考 资料写的demo ht ... -
android 屏幕保持唤醒
2012-10-09 22:41 0android 屏幕保持唤醒 http://www.cnb ... -
Android系统在超级终端下必会的命令大全
2012-10-05 11:09 1332[教程] Android系统在超级终端下必会的命令大全 ... -
360
2012-07-18 23:35 0写道 package org.android; ... -
android工具箱
2012-04-08 23:40 0android工具箱 -
droiddraw 21 布局工具
2012-03-28 23:17 0droiddraw 21 布局工具 -
Android通讯录
2012-03-26 00:29 0下面展示一段在Android1.5上读取手机通讯录的代码1 ... -
viewPager
2012-03-21 06:12 2037ViewPager MainActivity ... -
android应酬资料
2012-03-15 01:28 940android面试资料。收集的 ... -
android 资料
2012-03-15 01:08 13041.view如何刷新?简述什么是双缓冲?andro ... -
android杀进程方法
2012-02-29 01:15 2213android杀进程方法 源文: http://www.cn ... -
android手机设置自己喜欢的铃声
2012-02-26 18:51 2159存放手机铃声的的路径(三星 I8150 手机): /sys ... -
如何删除android手机自带的系统程序
2012-02-24 00:23 2672操作步骤: 工具准备: DooMLoRD , (Sup ... -
Android Mms 源码结构
2012-02-20 01:12 2388Android Mms 源码结构 源文:http:// ... -
读取android手机流量信息
2012-01-29 00:39 1418参考: http://www.2cto.com/kf/2011 ...
相关推荐
《Android自定义控件开发入门与实战》这本书深入浅出地讲解了如何在Android平台上创建和使用自定义控件,旨在帮助开发者从基础知识到实战技巧,全方位掌握这一核心技术。 一、自定义控件基础 自定义控件在Android中...
Android自定义控件开发入门与实战从自定义基础到实战的讲解。一步步深入。适合有一定Android基础的读者。本压缩包中自带了推荐的pdf阅读器。大家要是喜欢这本文档,推荐去京东,天猫,当当买支持一下默默付出的作者...
这个压缩包“CustomViews”很可能是包含了一系列Android自定义控件的示例项目,旨在帮助开发者理解和学习如何在Android Studio 1.0.2环境下创建和使用自定义控件。 自定义控件通常涉及以下关键知识点: 1. **...
本文将深入探讨Android自定义控件的概念、重要性以及如何通过重写已有控件来扩展其功能,帮助开发者从初阶迈进高阶。 首先,我们了解什么是自定义控件。在Android系统中,预置了大量的标准控件,如Button、TextView...
本资源"android自定义控件源码"提供了一套详细的自定义控件实现案例,帮助开发者深入理解自定义控件的工作原理和实现方法。配合文章《Android自定义控件深度解析》(文章地址:...
本文将深入讲解如何进行Android自定义控件的开发,包括理解View的工作原理、创建自定义控件的几种方式以及如何为自定义控件添加属性。 首先,我们需要理解View的基本结构和工作原理。Android的视图系统采用组合模式...
1 本书从动画、绘图、视图三方面介绍Android自定义控件相关知识,内容系统全面,并配以翔实的案例。 2 Android自定义控件涉及动画和色彩,本书将图片地址制作成二维码,可供读者扫描观看。 3 本书适合初高级水平从业...
至此,我们完成了一个简单的Android自定义控件,它能展示图片和文字。然而,自定义控件的能力远不止于此。你可以添加更多的功能,如触摸事件处理、动画效果,甚至动态改变内容。通过深入理解Android的绘图API和布局...
在Android开发中,自定义控件和框架的运用是提升应用独特性和性能的关键。下面将对"android 自定义控件实现demo收集 及 框架收集"这一主题进行深入探讨。 首先,自定义控件在Android应用开发中扮演着重要角色。它们...
《Android自定义控件入门到实战》源码提供了一套完整的自定义控件学习资源,涵盖了从基础到高级的各种实例,帮助开发者深入理解和实践Android自定义控件的开发。 自定义控件的核心在于扩展Android内置的View或...
《Android自定义控件入门到实战》是一本深入讲解Android平台下自定义控件开发的教程,源码2018.10版提供了一套完整的实践案例,帮助开发者从基础到进阶全面掌握自定义控件的制作技巧。这份资料涵盖了从基本的自定义...
本压缩包文件"Android自定义控件"提供了一系列的手工绘制的视图组件,涵盖了饼状图、雷达图、阴阳鱼、不规则按钮、贝塞尔曲线、圆形进度条、弧形进度条、折线图、涂鸦和波浪等丰富的自定义视图。这些控件不仅展示出...
这个压缩包"Android自定义控件源码.rar"包含了一些自定义控件的源代码,虽然不能保证每个都可直接运行,但它们提供了丰富的学习资源,帮助开发者理解和实践自定义控件的创建过程。下面将详细探讨Android自定义控件的...
总结起来,Android自定义组合控件的实现涉及到了对Android UI框架的深入理解和实践,包括继承自定义View或ViewGroup、测量与布局、绘制、事件处理等关键步骤。通过这样的方式,开发者可以构建出功能强大、交互丰富的...
总之,实现Android自定义控件的Java代码语法高亮是一项涉及正则表达式、线程管理和UI更新的技术挑战。合理利用现有的开源库,结合Android系统提供的工具,可以构建出功能强大且用户体验良好的自定义EditText控件。在...
在Android开发中,自定义控件是提升应用界面独特...通过学习和分析`customcontrols`中的代码,开发者可以深入理解Android自定义控件的工作原理,提高自己的Android开发技能,同时也能为今后的项目开发积累宝贵的经验。
在Android开发中,自定义控件是提升应用独特性和用户体验的重要手段。本示例将深入讲解如何基于Android系统实现一个自定义的Button控件,该控件由一个ImageView和一个TextView组成,并添加了标签功能。以下我们将从...
Android自定义控件源码含APK 仿Material Design风格,在低版本android环境上面实现高版本中的按钮等UI控件,视觉效果提升,本源码将向你介绍一些方法,实现这种效果。注:本源码中使用的控件是原作者已经封装好的,...
在Android应用开发中,自定义控件是提升用户体验和界面个性化的重要手段。本文将深入探讨如何实现一个自定义的...不断学习和实践,将帮助你更好地理解和掌握Android自定义控件的精髓,为你的应用带来更丰富的用户体验。