我第一次使用新的Android的小部件TextInputLayout,它非常好但我使用setError方法遇到了一些问题
这是我的xml
<android.support.design.widget.TextInputLayout
android:id="@+id/userData_txtNameWrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textColorHint="@color/light_gray"
app:hintTextAppearance="@style/TextAppearence.App.TextInputLayout">
<EditText
android:id="@+id/userData_txtName"
style="@style/bold_textbox_style"
android:layout_width="match_parent"
android:layout_height="@dimen/textinut_height"
android:layout_margin="5dp"
android:hint="name"
android:imeOptions="actionNext"
android:inputType="text"
android:paddingTop="10dp"
android:textSize="@dimen/medium_text"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
怎么了:
我跑的时候
setError("error message")
Run Code Online (Sandbox Code Playgroud)
整个EditText背景和提示文本颜色变为红色,因为这里很好.问题是我跑的时候
setError(null)
Run Code Online (Sandbox Code Playgroud)
EditText的样式与原始样式完全不同.
开始情况:
后 setError("mandatory field")
后 setError(null)
我做了很多研究,但找不到任何有用的东西,问题到底是什么?
UPDATE
调查setError()方法的android源代码我发现了这个
public void setError(@Nullable CharSequence error) {
if (!mErrorEnabled) {
if (TextUtils.isEmpty(error)) {
// If error isn't enabled, and the error is empty, just return
return;
}
// Else, we'll assume that they want to enable the error functionality
setErrorEnabled(true); …Run Code Online (Sandbox Code Playgroud) 我有网络视觉工作室2012快递,现在我需要制作一个桌面应用程序,需要我下载visual studio 2012 express for desktop或者我可以在网页版上安装任何插件吗?谢谢
我想知道哪个是手机键盘背后的技术,如Swype Keyboard或Nexus 4股票键盘.我为此搜索了很多,但找不到任何有用的东西.
我显然在简单的kayboard的sdk样本中找到了这个例子,并从中开始,以便了解IME开发背后的原理.现在我了解了它是如何工作的,我想了解这种键盘是如何工作的.我认为它与手势有关,我研究了它们,但它看起来是错误的方式.所以我问这个问题什么样的技术是基础.是画画吗?我需要找不到Canvas ecc吗?
谢谢
我正在尝试应用通过代码创建的 ColorStateList 作为 TextView 的 TextColor。问题是,如果我使用 xml 中定义的 ColorStateList,它可以工作,但当我通过代码创建 ColorStateList 时,它不起作用。
这是我创建 ColorStateList 的方法
int[][] states = new int[][] { new int[] { android.R.attr.state_activated } };
int[] colors = new int[] { Color.parseColor("#FFFF00") };
myList = new ColorStateList(states, colors);
Run Code Online (Sandbox Code Playgroud)
我简单地将其应用到 TextView 以这种方式
myTextView.setTextColor(myList);
Run Code Online (Sandbox Code Playgroud)
并且不起作用。使用这个xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="true" android:color="@color/yellow" />
<item android:color="@color/black" />
</selector>
Run Code Online (Sandbox Code Playgroud)
它可以在 xml 中设置文本颜色,也可以通过代码以这种方式设置
myTextView.setTextColor(myTextView.getContext().getResources().getColorStateList(R.drawable.textcolor_selector));
Run Code Online (Sandbox Code Playgroud)
我在网上搜索了解决方案,但我真的找不到导致此问题的原因,有人可以帮助我吗?
谢谢
我刚刚从Eclipse切换到Android Studio.就我今天所看到的而言,新IDE具有比Eclipse更多的功能,我喜欢使用新的IDE进行应用程序开发工作.
我只是无法理解一件事:在Eclipse中,有一个非常有用的DDMS透视图,从那里读取Logcat并执行许多其他操作,例如使用非常有用的dump view hierarchy函数,它允许您转储UI并检查它以了解在您的布局中显示的位置.
我在Android Studio中没有看到类似内容,经过大量研究后,您必须这样做的唯一方法是从"工具"菜单中打开Android设备监视器.
但这样做会导致ADB连接中断,因为Android Studio正在使用它,Android设备监视器希望使用它.结果是,如果您正在调试您的应用程序,除非您想要失去调试状态,否则无法打开Android设备监视器.
我认为这是不可接受的,我确信必须有更好的方法将Android设备监视器工具与Android一起使用,这可能吗?
谢谢
如果我有一个链接了许多库项目的项目,是否可以通过将每个项目打包在 AAR 中并将其包含在主项目中来提高构建性能?或者这不会有任何区别,因为当编译器需要组装 apk 时,它无论如何都需要将所有内容打包在一起?
感谢任何人谁会给我一些关于两种方法之间的性能差异的澄清
我在Android Studio上遇到了非常令人沮丧的行为,更新到最新版本(3.1.3,buld编号#AI-173.4819257),gradle插件版本3.1.3.它发生了什么,在运行我的基于Robolectric的单元测试后,点击"重新运行失败的测试",我总是得到这样的信息:
在'my-package-name'包中找到0个测试类
处理以退出代码254结束
空的测试套件.
我试图使缓存/重新启动无效,更新到每个依赖项的最新版本.实际上我找不到任何关于这个问题的有用信息,所以我在这里询问是否有人经历过类似的行为
在这里,您可以找到我的测试配置
android unit-testing intellij-idea robolectric android-studio
我正在尝试实现一个自定义按钮,它允许我在单击按钮时执行一组标准操作(例如编写日志),并执行特定于每个按钮实例的指定单击侦听器.可能吗?
非常感谢
我刚刚使用 Clean My Mac 的空间镜头功能来了解是什么占用了我的磁盘空间,我在 ~/Libary/Caches 下找到了它
即使有最大的想象力,我也想不出该文件夹如此大的原因,是否可以安全(并定期)删除该文件夹?
谢谢
我正在开发一个应该在android studio中使用的intellij插件.我已经设置了插件开发环境,但是当我点击"运行"命令时,它会启动一个安装了插件的新intellij实例.
我正在寻找的是如何直接在Android Studio上运行插件,这是可能的吗?我认为可以配置的唯一地方是"运行配置",但我找不到任何有用的地方.
谢谢
android ×7
aar ×1
buttonclick ×1
ddms ×1
robolectric ×1
textcolor ×1
unit-testing ×1
yarnpkg ×1