如何在聚焦EditText视图时删除边框?
我需要它,因为这个视图在屏幕上占用的空间很小,但没有边框就足够了。 在模拟器上运行时,将显示橙色边框,在设备上显示蓝色边框。
我不知道是否可能......你可以随时制作自定义按钮,小一点。
edittext的可能重复 - 如何隐藏underbar
@Rohit这个问题是在这个问题之后创建的....
@JakeMillington - 感谢您的确认。 将它们联系在一起仍然很好。 因此用户可以从两者中看到答案。
您是否尝试将EditText的背景设置为透明色?
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/hello"
android:background="#00000000"
/>
在代码中,这是:editTextView.setBackgroundColor(0);
"@android:color/transparent"有点自我解释。
"@null"也可以是一个选项
这个答案是不正确的,因为它不仅删除了焦点边框,还删除了未聚焦的EditText背景。
背景为0使ExitText完全变黑...
@Michael是的,因为hex 0和00000是一样的。它还是零。
android:id="@+id/edittext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:drawable/editbox_background_normal"
/>
这应该标记为已接受的答案。当前接受的答案不仅在选择edittext时删除边框,而且在不选择时也删除边界。
我同意这一点。应该是接受的答案。将对所接受的答案发表评论
我不是,最好的答案取决于UI设计(在这种情况下),接受的答案适合我,这个答案不是。
@MehdiDehghani复制你认为正确的答案我已经回答了这个问题,我不知道你想要什么。这些Android提供商没有我自己的代码。
有可能的。但是我不推荐它,因为用户习惯于某些比喻,你不应该改变一般的UX。
您可以为视图应用不同的样式。在你的情况下,听起来你想要一个看起来像TextView元素的EditText View元素。在这种情况下,您必须根据View元素的状态为EditText指定其他背景。
在您想要的layout.xml中,为EditText指定一个背景:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/hello" android:background="@drawable/custom"
/>
然后在drawable文件夹中创建custom.xml并添加以下内容:
android:drawable="@drawable/textfield_default" />
android:drawable="@drawable/textfield_disabled" />
这些是EditText View元素的可能状态。通常,您可以使用@android:drawable/textfield_default直接访问Android平台drawable,但在这种情况下,textfield drawables是私有的,因此您必须将它们复制到您自己的drawable文件夹中。可以在ANDROID_HOME\platforms\android-(API LEVEL)\data
es\drawable-(*dpi)\的SDK安装文件夹中找到原始资源。
完成后,最终会得到一个看起来像TextView但完全没有这些边框的EditText。您在模拟器中看到的那些橙色边框是默认的Android drawable。蓝色的是供应商特定的(可能是三星)。
希望有所帮助,并没有混淆那么多。
我很快就要测试了。它适用于Galaxy Tab。
嗯..这可行。但我不想画出所有这些背景。我只需删除默认边框,这不可能吗?
我发布的示例源自原始实现。 EditText边框不是单独绘制的。它是一个完整的背景图像,根据View元素的当前状态设置。在内部,android平台每次都会设置完整的背景图像。您可以在ANDROID_HOME platforms android-(API LEVEL) data res drawable - (* dpi)中看到SDK安装中的九个补丁图像。
这是最快的解决方案:
android:id="@+id/edittext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
/>
您可以将背景颜色保持为透明,以删除焦点上的EditText边框。
方法1
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#00000000"
/>