Robin Hu的专栏

Let's practice improving every day

关于findViewById

android.app.Activity中
public View findViewById (int id)
Since: API Level 1

Finds a view that was identified by the id attribute from the XML that was processed in onCreate(Bundle).
Returns

    * The view if found or null otherwise. 
这里的findViewById是在当前Active的View根及其儿子中通过Id寻找View
Active的View根一般是在其在onCreate函数中可以通过setContentView(R.layout.main)这种形式来设置。

android.view.View中

public final View findViewById (int id)
Since: API Level 1

Look for a child view with the given id. If this view has the given id, return this view.
Parameters
id     The id to search for.
Returns

    * The view that has the given id in the hierarchy or null 
因为是findViewById在是从View及其儿子中查找,所以即使几个layout的XML文件中的View的id号相同的话,只要他们没有相同的父节点或有相同的父亲节点,但不在父节点及以上节点调用findViewById通过id来查找他们就是没有问题。

一般我都是在layout的XML文件中设置View的id。
比如
<TextView 
    android:id="@+id/lable2" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    android:editable="false"/>
<View
 android:id="@+id/View01" android:layout_width="wrap_content" android:layout_height="wrap_content"></View>
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hudashi/article/details/6880553
文章标签: layout android xml
个人分类: Android基础
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭