界面布局--自定义Layout, 边框shape文件, 按钮selector文件及用法
2013-04-01 16:25
459 查看
package com.lonshin.chexiaodi.utils; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.widget.RelativeLayout; import com.krislq.sliding.R; public class ClickableCornerLayout extends RelativeLayout implements OnTouchListener { public ClickableCornerLayout(Context context) { super(context); } public ClickableCornerLayout(Context context, AttributeSet attrs) { super(context, attrs); this.setBackgroundResource(R.drawable.table_style);//这里也可以set成ARGB颜色 setOnTouchListener(this); setClickable(true); } public ClickableCornerLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); this.setBackgroundResource(R.drawable.table_style); setOnTouchListener(this); setClickable(true); } @Override public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { this.setBackgroundResource(R.drawable.table_style_dedede); } else if (event.getAction() == MotionEvent.ACTION_UP) { this.setBackgroundResource(R.drawable.table_style); } return false; } }
可如上自定义一个Layout.
想让一个widget圆角等,可定义一个shape文件,然后再设置background="@drawable/xxxxxx"
shape文件需要以下几个内容:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:radius="6.0dp"/> <solid android:color="#ffffff"/> <stroke android:width="1dp" android:color="#cccccc"/> </shape>
按钮需要selector文件,同样需要backround="@drawable/xxxx"
<?xml version="1.0" encoding="UTF-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/btn_call_s_hit" /> <!-- pressed --> <item android:state_focused="true" android:drawable="@drawable/btn_call_s" /> <!-- focused --> <item android:drawable="@drawable/btn_call_s" /> <!-- default --> </selector>
相关文章推荐
- 按钮,边框自定义圆角——shape和selector和layer-list的(详细说明)
- 写出高效清晰Layout布局文件的一些技巧--------自定义CoordinatorLayout:实现淘宝和QQ ToolBar透明渐变效果-------自定义Coordi快速返回效果
- LayoutInflater和inflate()方法的用法 (自定义View中加载xml布局)
- android UI学习 -- 设置界面的布局(包括style的使用,selector的使用,Checkbox自定义样式,菜单项的样式)
- 为同一界面建立多个layout分辨率布局文件
- 不使用布局文件,代码中自定义界面
- Android得到Layout里的布局文件里的自定义组件
- 切换界面(QStackedLayout 分组布局的用法)--Qt
- LayoutInflater和inflate()方法的用法 (自定义View中加载xml布局)
- Android 自定义背景文件,android:shape的用法
- Android_布局Selector与Shape的基本用法
- [Android Exercise]仿微信游戏界面PART.2—自定义样式shape和selector的应用
- 关于 eclipse xml 文件的layout界面无法显示布局
- 关于R.layout找不到自定义的布局文件
- android 布局文件 layout_weight用法
- 界面自定义按钮,带图标无边框背景透明按钮
- 自定义layout中布局文件的属性
- Android 实现圆角按钮(selector和shape的简单用法)
- android带返回按钮的自定义标题栏布局文件详解
- android背景选择器selector用法、自定义Button按钮样式..........