`

Android xmlns 的作用及其自定义

阅读更多

虽然有点没看到但是留着以后会看的更明白的。

摘自:http://blog.csdn.net/chuchu521/article/details/8052855

 

xmlns:Android="http://schemas.android.com/apk/res/android的作用是

个是xml的命名空间,有了他,你就可以alt+/作为提示,提示你输入什么,不该输入什么,什么是对的,什么是错的,也可以理解为语法文件。或者语法判断器什么的
这个主要作用是在运行的时候那些控件的属性都是通过它来识别的,如果上面你写错了,不会有任何问题,但是在运行的时候就会有问题,提示你没有指定宽度等什么。这个是不用联网的。

 

 

 
Android 自定义的xmlns其实很简单,语法规则是:

在使用到自定义View的xml布局文件中需要加入xmlns:前缀=http://schemas.android.com/apk/res/你的应用程序包路径.

下面是一个简单的例子:

结构图:

MyView.Java

package kexc.myView;

import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.widget.TextView;
public class MyView extends TextView {  
    private String mString = "Welcome to Kesion's blog";
    
    public MyView(Context context, AttributeSet attrs) {
  super(context, attrs);
  TypedArray a = context.obtainStyledAttributes(attrs,  
                R.styleable.MyView);
  int textColor = a.getColor(R.styleable.MyView_textColor,  
                0XFFFFFFFF);  
        float textSize = a.getDimension(R.styleable.MyView_textSize, 36);  
        mString = a.getString(R.styleable.MyView_title);
  setText(mString);
  setTextSize(textSize);
  setTextColor(textColor);
 }
}

 

main.xml

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout   
 xmlns:android="http://schemas.android.com/apk/res/android
 xmlns:test="http://schemas.android.com/apk/res/kexc.myView"
    android:orientation="vertical"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent">  
 <TextView    
     android:layout_width="fill_parent"   
     android:layout_height="wrap_content"   
     android:text="@string/hello"  
     />  
 <kexc.myView.MyView 
     android:layout_width="fill_parent"   
     android:layout_height="fill_parent"
     test:title="wo shi text"
     test:textSize="20px"  
     test:textColor="#fff"  
 />
</LinearLayout>

 

属性文件 value/attrs.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <declare-styleable name="MyView">  
        <attr name="textColor" format="color"/>  
  <attr name="textSize" format="dimension" />  
  <attr name="title" format="string"/>
 </declare-styleable>
</resources>

运行结果:

 

 

分享到:
评论

相关推荐

    Android xmlns 的作用及其自定义实例详解

    Android xmlns 的作用及其自定义实例详解  xmlns:Android=”http://schemas.android.com/apk/res/android的作用是: 这个是xml的命名空间,有了他,你就可以alt+/作为提示,提示你输入什么,不该输入什么,什么是对...

    Android 自定义属性及其引用

    总的来说,Android自定义属性及其引用是开发者工具箱中的重要组成部分,它们提供了强大的定制能力,使得我们可以根据项目需求创建出独具特色的用户界面。无论是对控件、布局还是其他组件进行扩展,自定义属性都能...

    Android自定义RadioButton及RadioGroup

    本篇文章将深入探讨如何在Android中自定义RadioButton及其所在的RadioGroup,并使用selector来实现动态的选中状态变化。 首先,我们来理解一下什么是selector。Selector是Android中的一个图形状态列表器,它可以...

    Android提高十八篇之自定义Menu(TabMenu)

    要创建自定义Menu,首先在`res/menu`目录下创建XML文件,定义菜单项及其属性,如ID、文本、图标等。例如: ```xml &lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt; &lt;item android:id="@+id/...

    android 评分条 RatingBar 使用及自定义

    在Android开发中,RatingBar是一个常用的UI组件,用于展示用户评价或者打分的场景,比如电影评分、商品评价等。本篇文章将详细讲解...在实际项目中,灵活运用RatingBar及其自定义特性,能够为用户界面增添不少亮点。

    Android自定义标题栏

    在Android应用开发中,自定义标题栏(也称为Action Bar或Toolbar)是常见的需求,它可以帮助我们实现更个性化和功能丰富的界面设计。Android Studio作为官方推荐的集成开发环境,提供了强大的支持来帮助开发者轻松...

    自定义spinner

    下面将详细介绍如何在Android中自定义Spinner及其相关知识点。 一、Spinner的基本使用 1. 添加Spinner到布局文件:在XML布局文件中,通过标签添加Spinner,并可以通过app:popupTheme属性设置弹出菜单的主题。 ```...

    android自定义补间动画

    Android中的补间动画主要由`Animation`类及其子类构成,包括`TranslateAnimation`(平移)、`RotateAnimation`(旋转)、`ScaleAnimation`(缩放)和`AlphaAnimation`(透明度变化)。这些类提供了对动画效果的精细...

    安卓自定义男女选择器

    &lt;RadioGroup xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/rg_gender" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation=...

    android shape样式

    这篇内容将深入探讨Android Shape的使用方法及其相关知识点。 首先,Shape元素是Android的Drawable类的一个子类,通常在res/drawable目录下的XML文件中定义。Shape的基本结构如下: ```xml &lt;shape xmlns:android=...

    自定义dialog弹出框

    在Android开发中,自定义Dialog...这个过程涉及到了Android的布局设计、Fragment管理、Dialog的创建和使用等多个知识点,对于提升应用的用户体验有着重要的作用。在实际项目中,可以根据具体需求进行相应的调整和扩展。

    Android开发之动态生成表格及其边框

    ### Android开发之动态生成表格及其边框 #### 一、引言 在Android应用开发过程中,经常需要根据用户的操作或数据的变化动态地调整界面显示,其中动态生成表格及其边框是一项常见需求。本文将详细介绍如何在Android...

    Android程序中的提示对话框,自定义对话框等,项目案例

    本项目案例主要涵盖了Android中的标准对话框、自定义对话框及其应用,旨在帮助开发者深入理解和灵活运用对话框功能。 1. **标准对话框** Android提供了一些内置的对话框类型,如`AlertDialog`、`ProgressDialog`、...

    Android开发之ProgressBar及其style样式的使用.zip

    本教程将详细讲解如何在Android应用中使用ProgressBar及其style样式,特别关注使用Kotlin进行实现。 一、ProgressBar的基本使用 ProgressBar在Android中分为两种类型:垂直和水平。默认情况下,它是水平的,可以...

    Android ListView添加Button及其事件

    以上就是关于“Android ListView添加Button及其事件”的详细知识,希望对你理解ListView的自定义和事件处理有所帮助。在实际开发中,你可以根据需求扩展这个例子,例如添加更多的交互元素,或者处理更复杂的业务逻辑...

    自定义preference的checkboxpreference样式

    android:summary="这是个自定义样式的复选框" /&gt; ``` 通过以上步骤,我们就成功地自定义了`CheckboxPreference`的样式。在实际开发中,可以根据需求调整布局文件中的各个属性,以达到理想的效果。记得在项目的...

    android进度条样式

    本文将深入探讨四种不同的Android进度条样式及其自定义图片动画的实现方法。 一、默认样式 Android系统提供了一些预设的进度条样式,如Horizontal和Circular。Horizontal进度条通常水平展示,Circular进度条则以...

    自定义Android中TabHost组件显示在屏幕底部 并实现滑动切换

    通过TabHost.setup()方法设置TabHost的内部布局,并使用TabHost.addTab()方法添加每个标签及其对应的内容。 1. **创建TabHost布局**: 在res/layout目录下创建一个新的XML布局文件,例如`tab_host.xml`,定义一个...

    android起航 Beginning Android

    - **样式和属性**:其他属性如`android:textStyle`用于设置按钮文字的样式(如粗体),可以根据需要自定义。 **示例** 以下是一个简单的XML布局示例,定义了一个按钮: ```xml &lt;Button xmlns:android=...

Global site tag (gtag.js) - Google Analytics