Sid*_*Sid 1 java android android-imageview android-fragments android-toolbar
我有一个带有工具栏的活动,在该工具栏中,我添加了一个图像视图并在其中设置了徽标。
我还创建了不同的片段,现在当我看到片段时,我想隐藏该图像视图并将标题设置为活动的工具栏。
我已经将图像视图和工具栏设置为家庭活动中的public static。
我试图像这样访问工具栏:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_account, container, false);
final Toolbar toolbar = (Toolbar) ((HomeActivity) getActivity()).findViewById(R.id.toolbar);
toolbar.setTitle(R.string.menu_account);
((HomeActivity) getActivity()).setSupportActionBar(toolbar);
((HomeActivity) getActivity()).mLogo.setVisibility(View.GONE);
return view;
}
Run Code Online (Sandbox Code Playgroud)
但是我在图像视图上得到了一个空指针,如果注释了setVisibility(View.GONE),则可以在工具栏上看到图像。
家庭活动
public class HomeActivity extends AppCompatActivity{
public static Toolbar toolbar;
public static ImageView mLogo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
mLogo = (ImageView)findViewById(R.id.imageViewLogo);
FragmentManager fragmentManager = HomeActivity.this.getFragmentManager();
MainFragment fragment = new MainFragment();
fragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
fragmentManager.beginTransaction().replace(R.id.mycontainer, fragment).commitAllowingStateLoss();
}
}
Run Code Online (Sandbox Code Playgroud)
请帮忙。谢谢。
像这样从Activity获取Imageview
ImageView mLogo = (ImageView)getActivity().findViewById(R.id.imageViewLogo);
mLogo.setVisibility(View.GONE);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1840 次 |
| 最近记录: |