带有 id="price" 的 EditText View 有一个 inputType="numberDecimal" 不接受任何数字,但只接受一位小数。另一个带有 id="store" 的 EditText View 没有设置 inputType,但有两个问题。如果 View 没有输入,则从键盘输入数字不会执行任何操作。接受一个数字的唯一方法是它紧跟在一个字母或另一个数字之后。我使用的是默认的 Android 键盘。布局在 SherlockFragment 的子类的 onCreateView() 方法中被放大。这可能是 SherlockFragment 中的 EditText View 行为的问题吗?我有一个类似的布局,用于膨胀“SherlockFragmentActivity”的子类,那些 EditText View 表现正常。有谁知道可能导致此问题的原因?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
style="@style/ProductTextViewTitle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="Product Tile" />
<TableRow android:layout_width="fill_parent"
android:layout_height="50dp"
android:gravity="center_vertical"
android:padding="5dp">
<TextView
style="@style/ApolloStyleBold"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.4"
android:gravity="center_vertical"
android:paddingLeft="5dp"
android:text="@string/price"/>
<EditText android:id="@+id/price"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.6"
android:background="@null"
android:hint="@string/price_italic_hint"
android:inputType="numberDecimal"/>
</TableRow>
<TableRow android:layout_width="fill_parent"
android:layout_height="50dp"
android:gravity="center_vertical"
android:padding="5dp">
<TextView
style="@style/ApolloStyleBold"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.4"
android:gravity="center_vertical"
android:paddingLeft="5dp"
android:text="@string/store_name"/>
<EditText android:id="@+id/store"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.6"
android:background="@null"
android:hint="@string/stores_hint"
/>
</TableRow>
</LinearLayout>
当我在 Android v4.3 上测试它时,它的行为一团糟(不接受数字作为输入)。但是,我在 Android v4.1.2 上对其进行了测试,它接受数字作为输入。就 EditText 行为而言,这两个版本有什么不同吗?
最佳答案
事实证明,问题不在于所设置的 android:inputType,而在于 View 层次结构中更高层的 ViewGroup。用于膨胀 SherlockFragment 的布局是更复杂布局中的子级。
View 层次结构中的一些父类有一个名为 DragLayer 的 FrameLayout ViewGroup 的子类。 DragLayer 类实现了一个名为 DragController.DragListener 的 Interface,它有一个方法 dispatchKeyEvent(KeyEvent event)。 DragLayer 中的这个方法使用了 @Override 符号,但是没有调用 super.dispatchKeyEvent(event)。添加这行代码后,单击键盘上数字的事件不会被消耗,现在一切正常。
关于android - EditText 不接受数字作为输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18069507/
我有一些Ruby代码,如下所示:Something.createdo|x|x.foo=barend我想编写一个测试,它使用double代替block参数x,这样我就可以调用:x_double.should_receive(:foo).with("whatever").这可能吗? 最佳答案 specify'something'dox=doublex.should_receive(:foo=).with("whatever")Something.should_receive(:create).and_yield(x)#callthere
我正在尝试解析一个CSV文件并使用SQL命令自动为其创建一个表。CSV中的第一行给出了列标题。但我需要推断每个列的类型。Ruby中是否有任何函数可以找到每个字段中内容的类型。例如,CSV行:"12012","Test","1233.22","12:21:22","10/10/2009"应该产生像这样的类型['integer','string','float','time','date']谢谢! 最佳答案 require'time'defto_something(str)if(num=Integer(str)rescueFloat(s
对于作为String#tr参数的单引号字符串文字中反斜杠的转义状态,我觉得有些神秘。你能解释一下下面三个例子之间的对比吗?我特别不明白第二个。为了避免复杂化,我在这里使用了'd',在双引号中转义时不会改变含义("\d"="d")。'\\'.tr('\\','x')#=>"x"'\\'.tr('\\d','x')#=>"\\"'\\'.tr('\\\d','x')#=>"x" 最佳答案 在tr中转义tr的第一个参数非常类似于正则表达式中的括号字符分组。您可以在表达式的开头使用^来否定匹配(替换任何不匹配的内容)并使用例如a-f来匹配一
目录一.加解密算法数字签名对称加密DES(DataEncryptionStandard)3DES(TripleDES)AES(AdvancedEncryptionStandard)RSA加密法DSA(DigitalSignatureAlgorithm)ECC(EllipticCurvesCryptography)非对称加密签名与加密过程非对称加密的应用对称加密与非对称加密的结合二.数字证书图解一.加解密算法加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密、对称加密和非
最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路
当我创建一个Rails应用程序时,控制台:railsnewfoo我的代码可以使用字符串“foo”吗?puts"Yourapp'snameis"+app_name_bar 最佳答案 Rails.application.class将为您提供应用程序的全名(例如YourAppName::Application)。从那里您可以使用Rails.application.class.parent获取模块名称。 关于ruby-on-rails-应用程序的名称是否可以作为变量使用?,我们在StackOve
我在搜索我的值是方法的散列时遇到问题。我只是不想运行plan_type与键匹配的方法。defmethod(plan_type,plan,user){foo:plan_is_foo(plan,user),bar:plan_is_bar(plan,user),waa:plan_is_waa(plan,user),har:plan_is_har(user)}[plan_type]end目前如果我传入“bar”作为plan_type,所有方法都会运行,我怎么能只运行plan_is_bar方法呢? 最佳答案 这个变体怎么样?defmethod
我正在尝试使用以下代码通过将ffmpeg实用程序作为子进程运行并获取其输出并解析它来确定视频分辨率:IO.popen'ffmpeg-i'+path_to_filedo|ffmpegIO|#myparsegoeshereend...但是ffmpeg输出仍然连接到标准输出并且ffmepgIO.readlines是空的。ffmpeg实用程序是否需要一些特殊处理?或者还有其他方法可以获得ffmpeg输出吗?我在WinXP和FedoraLinux下测试了这段代码-结果是一样的。 最佳答案 要跟进mouviciel的评论,您需要使用类似pope
这是针对我无法破坏的现有公共(public)API,但我确实希望对其进行扩展。目前,该方法采用字符串或符号或任何其他在作为第一个参数传递给send时有意义的内容我想添加发送字符串、符号等列表的功能。我可以只使用is_a吗?数组,但还有其他发送列表的方法,这不是很像ruby。我将调用列表中的map,所以第一个倾向是使用respond_to?:map。但是字符串也会响应:map,所以这行不通。 最佳答案 如何将它们全部视为数组?String的行为与仅包含String的Array相同:deffoo(obj,arg)[*arg].eac
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭5年前。Improvethisquestion我审查了一些用Ruby编写的专业代码,没有发现任何评论。代码读起来相当清晰,但没有self记录。我应该期望专业编写的Ruby代码有注释吗?或者,是否有一些Ruby原则认为注释不是必需的?