如何在EditText边框上有一条周围的线条,表明它目前在Android中处于焦点状态?什么是在全球范围内实现这一目标的最简单方法(影响所有布局)?
更新
我的styles.xml
_.pluck(list, 'ticker.ticker');
Edit_text_states.xml
<style name="EditTextCustomHolo" parent="android:Widget.EditText">
<item name="android:background">@drawable/edit_text_states</item>
</style>
Edit_text_background.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/edit_text_background" /> <!-- focused -->
<item android:drawable="@drawable/edit_text_normal" />
</selector>
以上配置用于将白色背景设置为<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="false" android:state_pressed="false">
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Bottom indicator color for the UNSELECTED tab state -->
<item android:top="5dp" android:left="5dp" android:right="5dp">
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#ffffff" />
<stroke android:width="1dp" android:color="@color/text_color" />
</shape>
</item>
</layer-list>
</item>
</selector>
。如何在EditText中添加衬里边框?
答案 0 :(得分:1)
您可以通过多种方式实现此效果,但最简单的方法是使用<selector>
创建可绘制(XML)图像,并根据状态引用不同的图像(您不需要定义所有状态)。 Here's documentation(请参阅“州名单”一章),或随机SO's question on similar subject(自己搜索更多)。
答案 1 :(得分:1)
就像马辛所说,这是做到这一点的方式。 现在,为了影响所有布局,您应该覆盖自定义主题中的属性EdiText。
像这样的东西
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="android:editTextStyle">@style/MyEditTextStyle</item>
</style>
<style name="MyEditTextStyle" parent="@android:style/Widget.EditText">
<item name="android:drawable">@drawable/custom_edit_text</item>
....
</style>