自定义view的加减器
来源:互联网 发布:网络女主播唱的男人花 编辑:程序博客网 时间:2024/05/29 16:22
public class AddDleneteView extends LinearLayout { private OnAddDelClickListener listener; public EditText etNumber; //对外提供一个点击的回调接口 public interface OnAddDelClickListener{ void onAddClick(View v); void onDelClick(View v); } public void setOnAddDelClickListener(OnAddDelClickListener listener){ if(listener!=null){ this.listener=listener; } } public AddDleneteView(Context context) { this(context,null); } public AddDleneteView(Context context, AttributeSet attrs) { this(context, attrs,0); } public AddDleneteView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); initView(context, attrs, defStyleAttr); } private void initView(Context context, AttributeSet attrs, int defStyleAttr) { View.inflate(context, R.layout.jiajianqi,this); //获取控件 TextView txtDelete=findViewById(R.id.txt_delete); TextView txtAdd=findViewById(R.id.txt_add); etNumber = findViewById(R.id.et_number); TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.AddDeleteViewStyle); String leftText = typedArray.getString(R.styleable.AddDleneteView_left_text); String rightText = typedArray.getString(R.styleable.AddDleneteView_right_text); String middleText = typedArray.getString(R.styleable.AddDleneteView_middle_text); int color = typedArray.getColor(R.styleable.AddDleneteView_left_text_color, Color.BLACK); txtDelete.setText(leftText); txtAdd.setText(rightText); etNumber.setText(middleText); txtDelete.setTextColor(color); //回收 typedArray.recycle(); txtDelete.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { listener.onDelClick(view); } }); txtAdd.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { listener.onAddClick(view); } }); } //对外提供一个修改数字的方法 public void setNumber(int number){ if(number>0){ etNumber.setText(number+""); } } //对外提供一个获取当前数字的方法 public int getNumber(){ String string = etNumber.getText().toString(); int i = Integer.parseInt(string); return i; }}//attrs<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="AddDleneteView"> <attr name="left_text" format="string"></attr> <attr name="right_text" format="string"></attr> <attr name="middle_text" format="string"></attr> <attr name="left_text_color" format="color"></attr> </declare-styleable> <declare-styleable name="AddDeleteViewStyle"></declare-styleable></resources>//布局<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <TextView android:id="@+id/txt_delete" android:layout_width="30dp" android:layout_height="30dp" android:text="-" android:gravity="center" android:background="#8b948b"/> <EditText android:id="@+id/et_number" android:layout_marginTop="2dp" android:layout_width="50dp" android:layout_height="30dp" android:background="#f2efef" android:gravity="center" android:text="1" android:inputType="number" /> <TextView android:id="@+id/txt_add" android:layout_width="30dp" android:layout_height="30dp" android:text="+" android:gravity="center" android:background="#8b948b"/></LinearLayout>
阅读全文
0 0
- 自定义view的加减器
- 加减器(自定义view)
- 自定义view加减器
- 自定义View加减
- 自定义View之组合view例加减器
- Android——自定义View之购物车的加减
- 自定义view继承LinearLayout实现购物车数量的加减
- Android使用自定义View实现购物车的加减
- 仿京东购物车加减数量的自定义View
- 【Android】自定义View —— 数字加减
- 安卓自定义组合式View 加减
- 自定义加减器
- 自定义view之路--数量加减view--适用电商类
- 自定义带加减的EditText
- 购物车 自定义加减器
- 自定义View实现东购物车加减控件
- 简易实现自定义购物加减器
- 自定义控件——加减器
- 文章标题
- linux添加环境变量对/etc/profile文件进行修改过后导致命令用不了
- openGL之glsl入门6--画三维图魔方、圆柱体
- unity 上传文件和下载资源的get post请求的写法
- ENVI遥感影像处理及几何校正
- 自定义view的加减器
- c++ 对文件读写操作 fstream ofstream istream 的简单理解
- 跟着书本学习CSS(2)
- [RN]一.windows搭建RN环境,创建dmeo运行(搭建RN环境没想象中的复杂)
- 常用的六种继承
- jw和e^jwt
- SpringBoot
- 51单片机中的PCON寄存器(电源控制及波特率选择寄存器)
- linux下的调试工具gdb