@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mEditText = findViewById(R.id.et); // 如下是内容为空的配置,需要两个属性结合使用;如果有默认值,进行相反的配置 // 设置文字的对齐方式 mEditText.setGravity(Gravity.START | Gravity.CENTER_VERTICAL); // 设置文本的显示方向 mEditText.setTextDirection(View.TEXT_DIRECTION_RTL); mEditText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { @Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { @Override public void afterTextChanged(Editable editable) { if (TextUtils.isEmpty(editable.toString())) { mEditText.setGravity(Gravity.START | Gravity.CENTER_VERTICAL); mEditText.setTextDirection(View.TEXT_DIRECTION_RTL); } else { mEditText.setGravity(Gravity.END | Gravity.CENTER_VERTICAL); mEditText.setTextDirection(View.TEXT_DIRECTION_LTR);

这样应该就解决了兼容性的问题了,效果如下: