- 浏览: 205830 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
xumin_minzi:
我也在使用ndk编译,ffmpeg源码放在哪个目录里面?
[原创]Android ndkr8编译 FFmpeg 0.11.1 "Happiness" -
ericchan2012:
在Dialog调用show方法之后
【原创】Android 设置Dialog的长宽和位置 -
maohualei:
求解: 我设置的时候 位置居然没有反应 dial ...
【原创】Android 设置Dialog的长宽和位置
自定义组合控件,用来复用
其一:
首先看布局文件:
一张图片,一行文字。
然后看定义的控件:
好了,这样你就可以使用了。
其二:
自定义一个EditText
首先在drawable定义一个selector,命名为selector_edittext_bg:
然后写个自定义控件的xml文件:
这个就是EditText前面有个说明文字;
接下来是定义一个控件了。
下面是使用方法:
好了,完工。具体要了解如何定义自己的属性,请看下面:
http://ericchan2012.iteye.com/admin/blogs/1650900
http://ericchan2012.iteye.com/blog/1650754
其一:
首先看布局文件:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <ImageView android:id="@+id/iv" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/tv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_below="@+id/iv" android:text="@string/bless" /> </RelativeLayout>
一张图片,一行文字。
然后看定义的控件:
public class ImageBtn extends LinearLayout { private ImageView iv; private TextView tv; private LayoutInflater mInflater; public ImageBtn(Context context) { this(context, null); } public ImageBtn(Context context, AttributeSet attrs) { super(context, attrs); mInflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); mInflater.inflate(R.layout.birth_cloud_item, this, true); } protected void onFinishInflate() { super.onFinishInflate(); iv = (ImageView) findViewById(R.id.iv); tv = (TextView) findViewById(R.id.tv); } public void setImageResource(int resId) { iv.setImageResource(resId); } public void setText(int resId) { tv.setText(resId); } }
好了,这样你就可以使用了。
其二:
自定义一个EditText
首先在drawable定义一个selector,命名为selector_edittext_bg:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/edit_pressed" android:state_focused="true"/> <item android:drawable="@drawable/edit_normal"/> </selector>
然后写个自定义控件的xml文件:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal"> <TextView android:id="@+id/tv" android:textColor="#987787" android:layout_width="100dip" android:layout_height="wrap_content" android:textSize="16sp" android:text="@string/phone" /> <EditText android:id="@+id/et" android:layout_width="180dip" android:background="@drawable/selector_edittext_bg" android:layout_height="wrap_content"/> </LinearLayout>
这个就是EditText前面有个说明文字;
接下来是定义一个控件了。
public class MyEditText extends LinearLayout { private EditText et; private TextView tv; private LayoutInflater mInflater; public MyEditText(Context context) { this(context, null); } public MyEditText(Context context, AttributeSet attrs) { super(context, attrs); mInflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); mInflater.inflate(R.layout.myedittext, this, true); } protected void onFinishInflate() { super.onFinishInflate(); et = (EditText) findViewById(R.id.et); tv = (TextView) findViewById(R.id.tv); } public void setText(int resId) { tv.setText(resId); } }
下面是使用方法:
<com.ds.widget.MyEditText android:id="@+id/myedittext" android:layout_width="fill_parent" android:layout_height="wrap_content" />
好了,完工。具体要了解如何定义自己的属性,请看下面:
http://ericchan2012.iteye.com/admin/blogs/1650900
http://ericchan2012.iteye.com/blog/1650754
发表评论
-
android java调用命令行给文件赋权限
2012-09-27 18:18 1656public void chmodFiles(){ Pr ... -
InputStream,String,File相互转化
2012-09-27 18:10 10171. String --> InputStream I ... -
android Uri获取真实路径转换成File的方法
2012-09-27 18:07 1915有的时候要将android uri如content://med ... -
android将路径转化为URI
2012-09-27 18:06 6453如果已經取得了檔案的路徑的字串,那怎麼轉成URI呢? St ... -
如何向android的setting语言列表中添加一门语言(
2012-09-27 12:59 1152如题: 看了下,android2. ... -
android更改暗码
2012-09-26 13:31 1058在Contact应用程序下的SpecialCharSequen ... -
android触屏震动以及震动强度修改
2012-09-26 09:24 4045PhoneWindowManager.java: 在inter ... -
android修改默认语言
2012-09-26 09:24 1493在build/tools/Buildinfo.sh下面 e ... -
android设置默认壁纸
2012-09-25 12:48 15971,动态壁纸 在frameworks\base\core\re ... -
android设置wallpaper
2012-09-25 12:00 1305设置壁纸的代码在 Launcher.java中的case Ad ... -
android Settings中的各个默认设置
2012-09-25 11:07 992在android中,Settings中有许多的默认设置,比如默 ... -
android 调用camera相关操作
2012-09-21 22:11 10521,通过intent调用camera Intent int ... -
android gallery相关操作
2012-09-21 20:11 9941,android调用gallery获取图片 Intent ... -
android中shape
2012-09-15 12:35 7961,作用: 可以在xml中定义图形,并且定义一些效果 2,用法 ... -
android中layer-list
2012-09-15 12:27 10521,作用: 可以将多个图片(图层)按照顺序层叠起来。 2,用法 ... -
android客户端连接人人网之二----获取朋友信息
2012-09-13 15:31 9421,http请求,将paramList发送到http://ap ... -
android客户端连接人人网之二----获取签名
2012-09-13 14:19 1100官方文档: http://dev.xiaonei.com/wi ... -
android客户端连接人人网之一----获取授权
2012-09-13 14:06 1126连接人人网,有两种方法,参考人人网的官网: http://wi ... -
android美化ToggleButton
2012-09-12 09:55 22081、设置XML属性 我们需要设置Toggle ... -
android中SharedPreference的使用
2012-09-08 11:08 904SharedPreference,相信了解过android的同 ...
相关推荐
首先,我们需要理解Android中的复合控件(Composite Control)。复合控件是由多个基本组件组合而成的复杂UI元素,它封装了特定的功能和行为,便于重用和维护。自定义标题栏就是一个典型的复合控件例子,通常包括返回...
综上所述,自定义Android复合控件是提升应用UI个性化和功能性的关键手段。通过学习和实践,开发者能够创建出满足项目需求的独特组件,从而增强应用的竞争力。在"fuhe"文件中,可能包含了实现这个自定义控件的相关...
组合控件,顾名思义,是指将多个基本控件通过特定的方式组合在一起,形成一个具有新功能或新外观的复合控件。本篇文章将深入探讨如何在Android中实现自定义组合控件,以及如何处理点击事件。 首先,我们从创建一个...
在Android开发中,创建自定义复合控件是提高代码复用性和界面设计灵活性的重要手段。本文将探讨如何创建一个图片和文字相结合的控件,并实现选中效果与点击事件的处理,以提升用户体验。 首先,我们需要理解“复合...
在Android开发中,自定义复合控件(Compound View)是一项重要的技能,它允许开发者将多个基本组件组合成一个更复杂的视图,以满足特定的UI需求。标题“MyCompoundView自定义复合控件”提示我们将深入探讨如何创建并...
2. 组合控件:结合多个基础控件,形成新的复合控件,如日历视图、滑动选择器等。 3. 完全自定义:从头构建控件,实现特定功能,如画布上的手势识别组件。 二、自定义控件的基本步骤 1. 创建控件类:继承自View或者...
7. **子视图管理**:如果需要,还可以在自定义控件内部添加其他视图,如ImageView或ProgressBar,形成复合控件。 8. **性能优化**:在设计自定义控件时,要考虑到性能因素,避免在`onDraw()`方法中执行耗时操作,...
《Android群英传》中关于自定义View的章节深入探讨了如何创建复合控件,这是一个实用且关键的话题,因为它能提高代码的复用性和可维护性。 首先,我们来理解“复合控件”的概念。复合控件是由一个或多个基本的...
在Android开发中,自定义控件是提升应用独特性和用户体验的重要手段。自定义控件允许开发者根据需求构建功能更丰富、界面更美观的组件。在这个主题中,我们将深入探讨如何通过一个常见的标题控件来实践自定义组合...
"Android图表控件"提供了一种高效的方式,通过图形化数据来帮助用户更好地理解和解析信息。这里我们聚焦于一个名为"WilliamChart"的库,它是一个强大的Android图表组件,以其精美的设计和丰富的定制功能而闻名。 ...
例如,我们可以基于LinearLayout、RelativeLayout 或 FrameLayout 来创建一个复合控件,这样可以结合多个简单的视图元素,形成具有特定功能的复杂组件。 创建TitleBar时,我们首先需要考虑它应有的基本组件,如标题...
这种方式是将多个基础控件组合成一个复合视图,通常用于封装复用性高的组件。通过使用ViewGroup作为基类,我们可以管理子视图,处理触摸事件,实现复杂的交互逻辑。 此外,自定义动画和手势识别也是自定义控件中的...
在Android开发中,自定义控件能够满足开发者对界面的个性化需求,提升应用的用户体验。本文将详细探讨如何实现三个关键的自定义控件:带图标的TextView、带图标的可编辑文本框以及设置全屏背景图片。我们将深入讨论...
3. **组合控件**:将多个标准控件组合在一起,形成一个新的复合控件,这是最常见也最灵活的方式,可以在不修改系统控件源码的情况下实现复杂效果。 本文将主要介绍组合控件的使用。例如,我们想要创建一个包含图片...
本主题将深入探讨如何在Android中实现自定义组合控件,即利用多个基础控件构建一个具有特殊功能或样式的复合视图。 首先,我们要理解自定义View的基本结构。一个自定义View通常继承自Android的View或者ViewGroup类...
2. **组合控件**:将多个现有的控件组合在一起,创建出具有新功能的复合控件。 3. **重写View类**:从头开始编写控件,实现全新的视觉和交互效果。 组合控件的优势在于它能够将多个基础控件的功能整合,形成一个新...
这样的示例可能会涉及到如何组合TextView和ImageView,创建一个类似按钮的效果,或者结合多个开关控件形成一个复合选择器。 通过学习和实践自定义组合控件,开发者能够深入理解Android视图系统的底层机制,从而更好...