android 一个layout中有很多个子控件,怎么去获得其中的一个控件

 我来答
米忙着
推荐于2016-10-22 · 知道合伙人软件行家
米忙着
知道合伙人软件行家
采纳数:118 获赞数:266
自己捣鼓了一个管理后台,N个app,研究过flutter,react,vue。

向TA提问 私信TA
展开全部
  一个layout就是一个容器,你可以放一些子控件,当你要操作子控件的时候,你就需要找对应的子控件,再去操作它(操作比如设置字体,颜色,样式等)。
  可以通过findViewById()方法 来获取,前提是,你的子控件需要定义一个id,然后在通过该方法来寻找并操作它。

  还可以通过findViewWithTag()方法来找到子控件(前提是你第一次找到这个子控件时,并设置一个tag),该方法一般用在activity调用adapter里面填充布局里面的子控件。
匿名用户
2018-02-28
展开全部

每个控件添加一个属性android:id="@+id/自己取个英文名"

然后在活动中实例化

例如,layout中有一个TextView控件

<TextView
    android:id="@+id/text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

在活动中实例化的代码

TextView text = (TextView) findViewById(R.id.text);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
523072446
推荐于2018-02-28 · TA获得超过147个赞
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:221万
展开全部
layout为布局,布局里面可以放任何空间,获取空间可以用findViewById方法获取
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
回忆的呻吟
2015-10-30 · TA获得超过155个赞
知道小有建树答主
回答量:162
采纳率:50%
帮助的人:69.9万
展开全部
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.jw_dialog);
Button mCallButton = (Button) findViewById(R.id.btn_cancel);
Button mCancelButton = (Button) findViewById(R.id.btn_call);

setContentView设置这个Layout到Activity 中然后直接findViewbyId就能找到这个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ddyyding
2012-12-07
知道答主
回答量:10
采纳率:0%
帮助的人:9.1万
展开全部
在onCreate中findViewById(R.id.xx);就可以了,不过要进行强制类型转换 比如TextView t = (TextView)this.findViewById(R.id.textview01);.
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式