编辑xml时自动生成.out.xml文件
这是Eclipse的问题,修改完main.xml后,如果当前激活的Tab页还是main.xml,Eclipse默认就会用xslt转换这个xml文件。
解决方案:在Eclipse里面配置,菜单Windows→Preference,选择结点Run/Debug→Lauching,Lauch Operation选择第一项。这样即使当前编辑文件是xml的话,也不会去转换这个xml文件了,而是去运行之前运行过的工程 。注意运行过一次出现错误的,一定要把之前的Run Configurations下的main.xml, main.xml(1)之类的删除。
程序切换页面时无故崩溃
原因很可能是切换到的页面没有在AndroidManifest.xml中定义。
使用代码修改EditText的Editable属性
EditText并没有提供setEditable方法,所以使用变通的方法,通过setKeyListener(null)来实现禁止编辑。如果还需再 次切换为可编辑状态,需要在之前通过getKeyListener保存原来的KeyListener,再通过setKeyListener还原回去就可以 了。
下面是依据上面原理编写的工具函数
public static void setEditTextEditiable(EditText editText,boolean editable){ KeyListener kl; if (editable) { kl = (KeyListener) editText.getTag(R.string.app_name); if (kl==null) kl = TextKeyListener.getInstance(); }else { kl = editText.getKeyListener(); if (kl!=null) editText.setTag(R.string.app_name,kl); kl = null; } editText.setKeyListener(kl); }
登录为: 读者 (reader)