一、attrs.xml文件的中属性类型format值的格式

"reference" //引用"color" //颜色"boolean" //布尔值"dimension" //尺寸值"float" //浮点值"integer" //整型值"string" //字符串"fraction" //百分数,比如200%12345678

枚举型的格式:

< attr name="orientation">

< enum name="horizontal" value="0" />

< enum name="vertical" value="1" />

< /attr>1234

XML文件中使用:

android:orientation = "vertical"1

标志位、位或运算,格式如下:

< attr name="windowSoftInputMode">

< flag name = "stateUnspecified" value = "0" />

< flag name = "stateUnchanged" value = "1" />

< flag name = "stateHidden" value = "2" />

< flag name = "stateAlwaysHidden" value = "3" />

< flag name = "stateVisible" value = "4" />

< flag name = "stateAlwaysVisible" value = "5" />

< flag name = "adjustUnspecified" value = "0x00" />

< flag name = "adjustResize" value = "0x10" />

< flag name = "adjustPan" value = "0x20" />

< flag name = "adjustNothing" value = "0x30" />

< /attr>123456789101112

XML文件中使用:

android:windowSoftInputMode = "stateUnspecified | stateUnchanged | stateHidden">1

属性定义可以指定多种类型:

< attr name = "background" format = "reference|color" />1

XML文件中使用:

android:background = "@drawable/图片ID|#00FF00"1

以上内容转自http://blog.csdn.net/wxg630815/article/details/6989316

二、自定义控件的使用

1、自定义控件在布局中使用,只需要写入类名就可以了。其他属性和一般控件写法一样。如:android:layout_width=”wrap_content”等。

android:id="@+id/view_main_my_view"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

test:tText="hello word" />12345

2、如果自定义的控件想使用自己定义的属性标签。在布局中添加命名空间“xmlns:‘名字’=”http://schemas.android.com/apk/res/‘自己软件包名’“。然后在工程中values文件下添加attrs.xml文件。

123456

添加完成后只需在布局中写出标签的内容即可。如上边布局文件,xmlns:test=”http://schemas.android.com/apk/res/com.chengkni.demo.attrs”就可以使用test这个命名空间,然后通过命名空间使用attrs.xml下的tText标签。

3、我们定义的自定义的控件MyView,继承了View。控件有个字段mViewName用来标记改控件的名字。我们可以通过在布局文件设置自定义属性就可以在实现给MyView的mViewName命名。

package com.chengkni.demo.attrs;import android.content.Context;import android.content.res.TypedArray;import android.util.AttributeSet;import android.util.Log;import android.view.View;public class MyView extends View {

private String TAG = this.getClass().getSimpleName();    private String mViewName;    public MyView(Context context) {        super(context);

Log.e(TAG, "---------- MyView(1) ----------");

init(context, null);

}    public MyView(Context context, AttributeSet attrs) {        super(context, attrs);

Log.e(TAG, "---------- MyView(2) ----------");

init(context, attrs);

}    public MyView(Context context, AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);

Log.e(TAG, "---------- MyView(3) ----------");

init(context, attrs);

}    private void init(Context context, AttributeSet attrs) {        if (attrs == null) {

mViewName = "Attrs is null";

} else {

TypedArray array = context.obtainStyledAttributes(attrs,

R.styleable.CustomView);

mViewName = array.getString(R.styleable.CustomView_tText);

array.recycle();

}

Log.e(TAG, "mString = " + mViewName);

}    public String getmViewName() {        return mViewName;

}    public void setmViewName(String mViewName) {        this.mViewName = mViewName;

}

}

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道!

android 自定义adjustnothing,Android应用开发之自定义控件:Flag标签相关推荐

  1. android自定义省略号,Android开发自定义TextView省略号样式的方法

    本文实例讲述了Android开发自定义TextView省略号样式的方法.分享给大家供大家参考,具体如下: 在布局xml中设置textView的字段 android:maxLines="2&q ...

  2. android 自定义 seekbar,Android自定义控件 带文字提示的SeekBar

    封面 1.写在前面 SeekBar控件在开发中还是比较常见的,比如音视频进度.音量调节等,但是原生控件有时还不能满足我们的需求,今天就来学习一下如何自定义SeekBar控件,本文主要实现了一个带文字指 ...

  3. android 自定义时钟,Android自定义控件之圆形时钟(续)

    在上篇文章中,我向大家介绍了如何通过自定义View一步步画出一个漂亮的圆形时钟.如果你还没看的话,我不建议你接着往下看,因为这篇文章是接着上篇的文章,如果直接看的话可能会不知所云,所以还是建议你先看一 ...

  4. android 自定义switchpreference,Android设置选项开发及自定义Preference样式

    一个完整的Android应用程序都应该提供选项(或者叫偏好设置等等)让用户对APP的表现形式能够进行设置,比如说是否加入用户体验计划,或者是否自动升级.定时提醒.开启自启动.后台运行等等.提供一个好的 ...

  5. android 自定义event,Android运用onTouchEvent自定义滑动布局

    写在自定义之前 我们也许会遇到,自定义控件的触屏事件处理,先来了解一下View类中的,onTouch事件和onTouchEvent事件. 1.boolean onTouch(View v, Motio ...

  6. android 自定义 child,Android自定义View

    前言 Android自定义View的详细步骤是我们每一个Android开发人员都必须掌握的技能,因为在开发中总会遇到自定义View的需求.为了提高自己的技术水平,自己就系统的去研究了一下,在这里写下一 ...

  7. android 自定义flowlayout,Android 自定义ViewGroup之实现FlowLayout-标签流容器

    本篇文章讲的是Android 自定义ViewGroup之实现标签流式布局-FlowLayout,开发中我们会经常需要实现类似于热门标签等自动换行的流式布局的功能,网上也有很多这样的FlowLayout ...

  8. android 自定义 对号,Android自定义View实现打钩动画功能

    先上效果图 动图 静态图 1. 回顾 [Android自定义View:一个精致的打钩小动画]上一篇文章,我们已经实现了基本上实现了控件的效果了,但是...但是...过了三四天后,仔细看回自己写的代码, ...

  9. android 自定义paint,Android自定义View中Paint、Rect、Canvas介绍(一)

    自定义View对于新手而言貌似是一个很复杂的东西.格式,各函数的意义.对于大神经常忘记各函数及一些参数的具体写法及意义,刚好在做一个风车效果,把过程及遇到的问题都写下来 1.如何自定义一个View p ...

  10. android自定义虚线,Android自定义view的方式绘制虚线

    Android自定义view绘制虚线 最近项目中有个需求,通过自定义view的方式绘制虚线 别的不多说先看一眼效果 这个需求在我们的开发中应该是一个很常见的需求了吧,有人会说有更简单的实现方式,对,但 ...

最新文章

  1. 元宇宙:基础-虚拟现实栈开发和虚拟土地
  2. [深度学习] Pytorch nn.CrossEntropyLoss()和nn.NLLLoss() 区别
  3. 用算法识别水流模式,AI探测到962起污水泄漏事件
  4. 关机相关(shutdown,reboot)
  5. HashMap多线程并发问题分析
  6. android ppt下载地址,Microsoft PowerPoint下载
  7. 无线网卡共享Internet访问到电脑有线接口注意事项
  8. 基于Docker搭建Gitlab代码存储
  9. php爱奇艺筛选标签,三种排序 快速筛选好视频_软件资讯技巧应用-中关村在线
  10. java c 客户端_java基于C/S模式实现聊天程序(客户端)
  11. 1小时学会jenkins集成邮件/微信/钉钉通知
  12. JarvisOJ Misc shell流量分析
  13. pytorch函数测试
  14. 关于FL Studio ASIO驱动不工作的一个解决方案
  15. Processing-文本排版
  16. Linux 多点电容触摸屏实验(1)
  17. 网吧用计算机性能配件清单,网吧组装电脑配置清单
  18. 用openCV取出图片中的四边形
  19. 【愚公系列】2022年11月 uniapp专题-优购电商-个人中心页面
  20. Androidstudio音乐播放器

热门文章

  1. MFC中手工创建控件
  2. 同时安装PyQt4和PyQt5之sip版本区分
  3. 图像识别---opencv安装
  4. OpenCV人工智能图像处理学习笔记 第4章 线段文字绘制
  5. Unity 用mono打开脚本时修改其显示分格,可VS风格等显示
  6. 传智播客 C/C++学习笔记 字符串替换
  7. 每天1万步就叫健康吗?
  8. Atitit 个人 企业 政府 等组织 财政收入分类与提升途径attilax总结 1.1. 国家财政收入分类 1 1.2. 企业收入分类 1 1.3. 个人收入分类 1 1.1.国家财政收入分类
  9. Atitit 数据库view视图使用推荐规范与最佳实践与方法
  10. Atiti 数据库系统原理 与数据库方面的书籍 attilax总结 v3 .docx