<LinearLayout
android:id="@+id/right_layout"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:orientation="horizontal">
<TextView
android:id="@+id/jian"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="-"/>
<EditText
android:id="@+id/et_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1"
/>
<TextView
android:id="@+id/jia"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="+"/>
</LinearLayout>
package com.example.luck.myapplication1.View;
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 com.example.luck.myapplication1.R;
public class AddMinusView extends LinearLayout {
private TextView jian , jia ;
private EditText et_num;
private int num = 1;
public AddMinusView(Context context) {
this(context,null);
}
public AddMinusView(Context context,@Nullable AttributeSet attrs) {
this(context, attrs,0);
}
public AddMinusView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context);
}
private void init(final Context context) {
View view = LayoutInflater.from(context).inflate(R.layout.addminus, this, true);
jia = findViewById(R.id.jia);
jian = findViewById(R.id.jian);
et_num = findViewById(R.id.et_num);
et_num.setText("1");
jian.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
num = Integer.parseInt(et_num.getText().toString());
num--;
if (num == 0){
num = 1;
Toast.makeText(context,"不能再减了",Toast.LENGTH_SHORT).show();
return;
}
et_num.setText(num+"");
if (addMinusCallback != null){
addMinusCallback.numCallback();
}
addMinusCallback.numCallback();
}
});
jia.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
num = Integer.parseInt(et_num.getText().toString());
num++;
et_num.setText(num+"");
if (addMinusCallback != null){
addMinusCallback.numCallback();
}
addMinusCallback.numCallback();
}
});
}
public interface AddMinusCallback{
void numCallback();
}
private AddMinusCallback addMinusCallback;
public void setAddMinusCallback(AddMinusCallback addMinusCallback){
this.addMinusCallback = addMinusCallback;
}
}