在我们刚刚接触android时我们设计的ui一般只用sdk原生的就可以,但是,为了提高我们的开发效率,我们不可能一这么做。今天我就告诉大家一个新一方法:
我们可以依照android的方法,创建我们自己的xml文件,并且创造我们自己的属性,使用我们自定义的代码,我们可以把我们创建的这种框架称为母板,意思是我们会多次用到它。如新浪,网易,qq等app会多次用到结构差不多的toolbar。
一、在资源文件夹中创建自己的属性。
创建资源文件,我们可以命名为atts.xml。
在resources标签中添加declare-styleable标签在其中添加我们需要的属性。
name:为此属性的标签名。
format:为标签值的单位格式。
二、自定义创建一个类,创建我们的框架布局。
创建Topbar继承RelativeLayout类,并创建构造函数把contex与属性传给父类。
通过context.obtainStyledAttributes将我们在layout中设置的值集中起来,把我们的值进行转换成相应的数组传给TypedArray对象。
接着我们把我们设置的attrs传递给我们的变量。
然后调用ta.recycle()方法来回收我们的TypedArray。这一步很重要。如果不做可能造成超出内存。
接下来我们就可以设置我们的这些组件样式
把这三个组件添加到我们的布局中。
其它如设置监听可以用接口回调的方法,设置隐藏等相关方法可以创建一个方法供外部调用。
三、在我们的布局中使用它,并在代码中添加点击方法。(注意:在其中需要用自定义的布局需要引用文件所以
xmlns:custom="http://schemas.android.com/apk/res-auto"需要这么一段语句)