Android 如何将错误边界设置为RelativeLayout?编辑文本框位于RelativeLayout中

Android 如何将错误边界设置为RelativeLayout?编辑文本框位于RelativeLayout中,android,android-edittext,border,android-relativelayout,Android,Android Edittext,Border,Android Relativelayout,上图显示只有编辑文本框的边框变为红色。我需要的相对布局改变它的边框为红色时,编辑文本字段是空的按钮点击。屏幕上的“白色”部分为RelativeLayout 主要活动代码: public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate ( savedInstance

上图显示只有编辑文本框的边框变为红色。我需要的相对布局改变它的边框为红色时,编辑文本字段是空的按钮点击。屏幕上的“白色”部分为
RelativeLayout

主要活动代码:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate ( savedInstanceState );
        setContentView ( R.layout.phone );

        final EditText number = (EditText) findViewById ( R.id.mobilenumber );
        final String msisdn=number.getText().toString();
        Button button = (Button) findViewById(R.id.login_button);

        button.setOnClickListener( new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if(TextUtils.isEmpty(msisdn)) {
                    number.setBackgroundResource(R.drawable.edit_text_error_background);

                    number.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.like_selected, 0);
                    return;
                }
            }
        });


    }

您可以按如下方式更改editText背景色

button.setOnClickListener( new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if(TextUtils.isEmpty(msisdn)) {
                number.setBackground(R.drawable.your_error_background);


            }
            else{
                 number.setBackground(R.drawable.your_normal_bakground);
            }
        }
    });
使用
setBackground()
方法而不是
setBackgroundResource()
方法,因为默认情况下它接受可提取的资源


我希望它对你有用。谢谢您

发布一些您尝试过的代码。因此,您需要编写自己的方法来观察编辑文本字段是否为空并将布局设置为红色。请不要忘记另一种情况:p您的代码用于设置相对布局的颜色?出现错误时,您需要更改背景occur@sree这就是我要问的。编辑框为空时单击按钮时,更改相对版面边框颜色的代码是什么