如何从片段访问相同的视图?

时间:2015-09-08 13:33:55

标签: android android-fragments android-activity

我想知道如何从片段中访问视图(即活动中的视图)。

更具体地说,视图从活动开始,我希望相同的视图以片段结束。感谢。

活动:

private View layoutProgress;

protected void onCreate(Bundle savedInstanceState){

layoutProgress = findViewById(R.id.layout_progress);

layoutProgress.setVisibility(View.GONE);
}

按下按钮时:

fragment.getInstance().printScreen();(function in fragment)
layoutProgress.setVisibility(View.VISIBLE);

在片段中:

执行代码,我想设置layoutProgress可见性

2 个答案:

答案 0 :(得分:0)

片段:

Activity act = getActivity();
if (act == null) return;
View layoutProgress = findViewById(R.id.layout_progress);

但实际上,更好的设计是在Activity中调用隐藏ProgressBar的方法,以便在一个地方保持与该视图的所有互动,而不是纠缠在一起如果您决定使用该进度条执行更多操作,请说明。

阅读communication between Fragments上的指南,了解从Activity调用Fragment方法的正确(如将来的错误抵制)实现。

答案 1 :(得分:0)

让您的进度视图在活动中全球化 以及访问片段

中的进度视图
((Youractivity) getActivity()).layoutProgress.setVisibility(View.GONE);