android linearlayout 自定义,android 自定义LinearLayout
接着上一篇,本篇玩一下自定义LinearLayout,直接上代码:
1. attr.xml
2.继承LinearLayout重新定义一个:
package com.test.customviewtest;
import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
public class MyLinearLayout extends LinearLayout {
public MyLinearLayout(Context context, AttributeSet attrs) {
super(context, attrs);
int resouceId = -1;
TypedArray MyTypeArray = context.obtainStyledAttributes(attrs,
R.styleable.MyLinearLayout);
TextView tv = new TextView(context);
EditText et = new EditText(context);
int N = MyTypeArray.getIndexCount();// N=2
for (int i = 0; i < N; i++) {
int attr = MyTypeArray.getIndex(i);
switch (attr) {
case R.styleable.MyLinearLayout_Text:
resouceId = MyTypeArray.getResourceId(
R.styleable.MyLinearLayout_Text, 0);
tv.setText(resouceId > 0 ? MyTypeArray.getResources().getText(
resouceId) : MyTypeArray
.getString(R.styleable.MyLinearLayout_Text));
break;
case R.styleable.MyLinearLayout_Orientation:
resouceId = MyTypeArray.getInt(
R.styleable.MyLinearLayout_Orientation, 0);
this.setOrientation(resouceId == 1 ? LinearLayout.HORIZONTAL
: LinearLayout.VERTICAL);
break;
}
}
addView(tv);
addView(et);
MyTypeArray.recycle();
}
}
3.在activity_main.xml 布局中引用自定义LinearLayout:
4. MainActivity.java
package com.test.customviewtest;
import android.app.Activity;
import android.os.Bundle;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
内容很简单,就不作详细介绍了,看一下demo基本就会搞了!!
android linearlayout 自定义,android 自定义LinearLayout相关推荐
- android linearlayout 边框阴影,自定义阴影LinearLayout,自带padding
先上东西,请看这个popupwindow, 实际上它是有阴影的 注意我的高和宽都加上了阴影的宽度240+7+3 长度341+7+3 android:layout_width="250dp&q ...
- android 自定义图片容器,Android应用开发中自定义ViewGroup视图容器的教程
一.概述在写代码之前,我必须得问几个问题: 1.ViewGroup的职责是啥?ViewGroup相当于一个放置View的容器,并且我们在写布局xml的时候,会告诉容器(凡是以layout为开头的属性, ...
- Android Paint应用之自定义View实现进度条控件
在上一篇文章<Android神笔之Paint>学习了Paint的基本用法,但是具体的应用我们还没有实践过.从标题中可知,本文是带领读者使用Paint,自定义一个进度条控件. 上图就是本文要 ...
- 使用XML声明自定义Android UI元素
如何使用XML声明Android UI元素? #1楼 Google似乎更新了其开发者页面,并在那里添加了各种培训. 其中一个处理自定义视图的创建,可以在这里找到 #2楼 除了大多数投票的答案. obt ...
- 【Android 应用开发】 自定义组件 宽高适配方法, 手势监听器操作组件, 回调接口维护策略, 绘制方法分析 -- 基于 WheelView 组件分析自定义组件
博客地址 : http://blog.csdn.net/shulianghan/article/details/41520569 代码下载 : -- GitHub : https://github.c ...
- 【Android 应用开发】自定义View 和 ViewGroup
一. 自定义View介绍 自定义View时, 继承View基类, 并实现其中的一些方法. (1) ~ (2) 方法与构造相关 (3) ~ (5) 方法与组件大小位置相关 (6) ~ (9) 方法与触摸 ...
- Android学习笔记之自定义Toast
1)布局文件layout [html] view plaincopy <RelativeLayout xmlns:android="http://schemas.android.com ...
- Android 手把手教您自定义ViewGroup
最近由于工作的变动,导致的博客的更新计划有点被打乱,希望可以尽快脉动回来~ 今天给大家带来一篇自定义ViewGroup的教程,说白了,就是教大家如何自定义ViewGroup,如果你对自定义ViewGr ...
- android程序日历layout,Android使用GridLayout绘制自定义日历控件
效果图 思路:就是先设置Gridlayout的行列数,然后往里面放置一定数目的自定义日历按钮控件,最后实现日历逻辑就可以了. 步骤: 第一步:自定义日历控件(初步) 第二步:实现自定义单个日期按钮控件 ...
最新文章
- android点击失效,android点击无效验证的解决方法
- C语言小游戏——三子棋
- 【Linux】一步一步学Linux——ac命令(102)
- 安卓机更新系统会卡吗_【ios13更新】最全的ios13系统的攻略,最大一次更新,升级绝对不会后悔吗?来看看...
- 学习可以借鉴的大牛们的网站
- 电脑word在哪_永中PDF转WORD在线文档转换器——无需会员、没有限制
- iscsi 挂载教程_CentOS下如何搭建ISCSI以及Windows如何挂载ISCSI镜像
- build lavas 失败_vue lavas的项目在IE下显示空白
- 沉默内向的计算机保研er在保研面试中会吃亏吗?
- matlab 图片字符切割,基于MATLAB的图片中字符的分割与识别
- (三)常见的数字逻辑电路器件及属性
- 【富文本】wangeditor编辑器简单使用(自定义图片上传)
- Word VBA(批量复制Excel表格和Word表格到Word中)
- 基于微信小程序的音乐播放器设计
- Oracle数据库PL SQL开发、Oracle-SQL开发习题答案
- js 对日期的计算,加减天数
- 加载繁体字体时遇到的问题
- vue axios传递FormData填坑,headers不显示,后台报错等等问题
- Fast-Planner代码阅读-1. Robust and Efficient Quadrotor Trajectory Generation for Fast Autonomous Flight
- python爬取安居客二手房网站数据