新建一个布局文件,里面写你需要的布局效果
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:orientation="horizontal"
android:background="@drawable/jia_jian_bg">
<TextView
android:id="@+id/jian"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:textSize="25sp"
android:padding="5dp"/>
<View
android:layout_width="1px"
android:layout_height="match_parent"
android:background="#999999"/>
<EditText
android:id="@+id/num"
android:layout_weight="1"
android:text="10"
android:gravity="center"
android:background="#00000000"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<View
android:layout_width="1px"
android:layout_height="match_parent"
android:background="#999999"/>
<TextView
android:id="@+id/jia"
android:textSize="25sp"
android:padding="5dp"
android:text="+"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
新建一个布局的实现类class
package majunbao.bwie.com.demolsbj.widget;
import android.content.Context;
import android.support.annotation.Nullable;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import majunbao.bwie.com.demolsbj.R;
/**
* Author:kson
* E-mail:[email protected]
* Time:2018/08/22
* Description:自定义加减器
*/
public class MyJIaJianView extends LinearLayout{
private TextView jiaTv,jiantv;
private EditText numEt;
private int num = 1;
public MyJIaJianView(Context context) {
this(context,null);
}
public MyJIaJianView(Context context, @Nullable AttributeSet attrs) {
this(context, attrs,0);
}
public MyJIaJianView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context);
}
/**
* 初始化自定义的布局
*/
private void init(Context context) {
View view = LayoutInflater.from(context).inflate(R.layout.jia_jian_layout,this,true);
// addView(view);
jiantv = view.findViewById(R.id.jian);
jiaTv = view.findViewById(R.id.jia);
numEt = view.findViewById(R.id.num);
numEt.setText(num+"");
jiaTv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
num++;
numEt.setText(num+"");
if (jiaJianListener!=null){
jiaJianListener.getNum(num);
}
}
});
jiantv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
num--;
if (num<=0){
Toast.makeText(getContext(), "数量不能小于1", Toast.LENGTH_SHORT).show();
num = 1;
}
numEt.setText(num+"");
if (jiaJianListener!=null){
jiaJianListener.getNum(num);
}
}
});
}
/**
* 设置editext数量
* @param
*/
public void setNumEt(int n) {
numEt.setText(n+"");
num = Integer.parseInt(numEt.getText().toString());
}
private JiaJianListener jiaJianListener;
public void setJiaJianListener(JiaJianListener jiaJianListener) {
this.jiaJianListener = jiaJianListener;
}
public interface JiaJianListener{
void getNum(int num);
}
}
在应该使用的布局中引入此布局
<com.example.kson.cart1603bdemo.widget.MyJIaJianView
android:id="@+id/jiajianqi"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>