setcontentview和setview的区别

 我来答
j6646235
2017-08-09
知道答主
回答量:5
采纳率:100%
帮助的人:5393
展开全部

以Dialog为例:


//Code Start

DialogBuilder builder = new DialogBuilder(MainAcitivty.this);

builder.setView(mLayout_1);

Dialog dialog = builder.create();

dialog.show();

dialog.setContentView(mLayout_2);

//Code End

从上面的代码可以看出:

setView是DialogBuilder类的方法,setContentView是Dialog类的方法。

setView是在dialog.show()之前使用的,而setContentView是在dialog.show()之后使用的。

可以理解为,setView是在Dialog初始化时使用的布局视图,而setContentView是在Dialog展示之后修改它的现有布局视图。

两者实现的功能基本一样,只是用法稍微有点不同。

就烦条0o
2016-07-23 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
两者的区别主要包括两点:
1. 以添加UI组件是否被移除
setContentView() 会导致先前添加的被移除, 即替换性的;
而 addContentView() 不会移除先前添加的UI组件,即是累积性的

2. 是否控制布局参数
addContentView() 有两个参数, 可以控制布局参数; 你指出的这个setContentView 没有接受布局参数,
默认使用MATCH_PARENT; 不过setContentView()也有带两个参数的版本, 可以控制布局参数。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式