一年好景君须记,最是橙黄橘绿时。这篇文章主要讲述如何在运行时检查Android中Edittext / TextView的textallcaps是true / false?相关的知识,希望能为你提供帮助。
【如何在运行时检查Android中Edittext / TextView的textallcaps是true / false()】我为TextView设置了android:textAllCaps =“true”,用于以大写字母显示标签。它显示很好。但是,我需要在运行时检查标签是否在Capital中。但是,我无法找到获取textAllCaps属性的属性。有人可以帮我吗?
提前致谢!
答案如果您检查TextView / Button源代码,找到here
setAllCaps方法使用setTransformationMethod
方法将转换方法设置为相应的视图。
对于AllCapsTransformationMethod
方法,这是setAllCaps
。因此,要获取视图是否已设置,您可以使用以下命令进行检查:
TransformationMethod transformationMethod = btn.getTransformationMethod();
if (transformationMethod!=null){
if (transformationMethod.getClass().getSimpleName().equalsIgnoreCase(AllCapsTransformationMethod.class.getSimpleName())){
//todo logic based code
}
其中btn是你的按钮视图
或者,也可以从中创建一个方法来检查Button / TextView是否设置了全部大写值
像这样的东西:
public boolean hasAllCaps(TextView textView){
TransformationMethod transformationMethod = textView.getTransformationMethod();
if (transformationMethod!=null)
if (transformationMethod.getClass().getSimpleName().equalsIgnoreCase(AllCapsTransformationMethod.class.getSimpleName())){
return true;
}
return false;
}
然后检查一下价值!
另一答案我不确定你为什么要检查它们,即使它确定它们会因为textAllCaps属性而处于大写状态。
解决方法是获取TextView的Text然后将其与该文本的大写字母进行比较:
String text = textView.getText().toString();
if(text.equals(text.toUpperCase()){
\The text is in Uppercase
}
推荐阅读
- Application didFinishLaunchingWithOptions或applicationDidBecomeActive
- Android中EditText的掩码
- 多行中的Edittext与Android中的actionDone问题[重复]
- xamarin android c#Edittext自动滚动到底部
- 停止setText()在EditText上显示Android软键盘[复制]
- Xamarin.Android EditText事件未在设备上触发
- Android Soft Keyboard在重新打开时隐藏EditText
- 将EditText数组转换为字符串数组 - Kotlin Android
- EditText中的标点符号 - Android Nougat