实习这么多天学到很多,突发奇想的想把每天学到的知识记下来。。恩恩。。。
问:LinearLayout中的layout_weight为什么不生效?
答:那是因为你在它的layout_width属性中设置了它的宽度。。。如果要比重生效的话,width的值必须设置为0dp哦~~~~(好吧之前一直困惑的,原来如此啊~~~)
问:使用RelativeLayout、LineayLyout的时候,在代码里面用
EditText mEditTextContent = (EditText)findViewById(R.id.et_sendmessage);为什么eclipse会对这行语句报 java.lang.ClassCastException: android.widget.Button cannot be cast to android.widget.EditText错误啊。
答:按照异常的描述应该是不能将button强制转换成EditText,先不讨论这两者之间能不能转换,但是作为一个有志向有梦想有激情有热血的四有青年,我们绝对不可能犯这种低级错误对不对?
R.id.et_sendmessage
在布局文件里面对应的控件明明就是一个EditText。但是为什么eclipse会抛出上面那个异常呢?
</pre><pre code_snippet_id="416793" snippet_file_name="blog_20140704_5_1086208" name="code" class="java">其实错误还是在你的布局文件里面,不过不是因为控件的类型定义错了,而是布局的逻辑有问题。(可能还有其他的原因,不过我只对我自己碰到的情况进行分析,大神请轻喷。。。)
</pre><pre code_snippet_id="416793" snippet_file_name="blog_20140704_7_987932" name="code" class="java">我碰到那个问题的时候,不管我把布局换成相对布局,还是使用线性布局,程序老是出错。后来一看,我在相对布局里把一个ImageView设置了
<pre name="code" class="html">layout_alignParentLeft=true
Layout_toLeftOf="@id/上面那个Imageview的id"
</pre><pre code_snippet_id="416793" snippet_file_name="blog_20140704_11_4445468" name="code" class="java">按照这样的布局逻辑,后面这个EditText应该是被挤到屏幕外面去的了。但是eclipse为什么会抛出上面那个莫名其妙的异常,我表示也不清楚。。
还有可能比如你用的相对布局,但是你给它设置了orientation的值,其实这个值对于相对布局来说好像没多大用把,删掉试试~
</pre><pre code_snippet_id="416793" snippet_file_name="blog_20140704_13_3159495" name="code" class="java">总之,以后碰到这样的问题,先看看自己的布局文件的逻辑有没有什么错误吧,应该会有错误的。