运用组合式控件编写一个类似于购物车的增加删除数量的效果,如图所示:
MainActivity中
public class MainActivity extends AppCompatActivity { private viewjia av; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); av = (viewjia) findViewById(R.id.jia); av.setMaxValue(10); av.setOnNumberChangerListener(new viewjia.OnNumberChangerListener() { @Override public void OnNumberChanger(int value) { //属于我自己的业务逻辑 Toast.makeText(MainActivity.this, "变化的数量值"+value, Toast.LENGTH_SHORT).show(); } }); } }
类继承一个属于ViewGroup下的任意自定义控件
public class viewjia extends LinearLayout implements View.OnClickListener { private ImageButton mIv_sub; private ImageButton mIv_add; private TextView mTv_value; private int mValue; //1.创建对象的时候 public viewjia(Context context) { this(context, null); } //2.XML中使用的时候回调 public viewjia(Context context, AttributeSet attrs) { this(context, attrs , 0); } //3.在XML中使用,且使用Style风格中. public viewjia(Context context, AttributeSet attrs, int defStyleAttr) {