2012-12-30 108 views
0

我的主视图显示得很好。在菜单选择上膨胀视图

我的麻烦是,当用户选择菜单按钮,然后用户的喜好图标,我想我的意见之一是充气和可见。这个视图当然有我想显示供用户选择的选项。

我遇到的困难正在处理我的观点来设置可见性。我“相信”这是因为这个观点还没有膨胀,但我不确定最好的方式是让它膨胀。

此外,我应该将它作为OnCreate步骤的一部分,然后在需要时隐藏或充气。无论哪种方式,我如何膨胀一个视图?

TIA JB

对不起,我已经做的不好这个问题。这里是一些代码:

我有一个叫做userpreferences的相关布局。当用户选择菜单时,我想要显示该视图,以便他们可以修改其设置。

public boolean onOptionsItemSelected(MenuItem item) 
{ 

    switch (item.getItemId()) 
    { 
     case R.id.menu_save: 
    ..... code ..... 
     case R.id.menu_Preferences: 
      //Inflate view here so user can select options 
      return true; 
+1

键盘上没有“输入”键?你的问题真的很难读... –

+0

对不起,我一直在努力,通过新的一年完成这件事。 – GPGVM

+0

所以你想在用户点击菜单键时显示一个视图(从xml首先膨胀)?也许你想详细说明你的问题。 – Huang

回答

1

编辑:问题变了。

你最好的方式来处理这可能只是开始一项新的活动。

startActivity(new Intent(this, NewActvity.class)); 

会做的伎俩。


你的问题是相当模糊......总之..

在一个正常的活动,你的活动将已经知道视图中,您可通过设置“的setContentView谈论(R.layout.your_layout );”在OnCreate。

从这一点上,你可以通过每例如简单地做夸大的任何观点:

TextView mTextView = (TextView) findViewById(R.id.my_textview); 

如果你正在构建一个稍微复杂的设置,你可能仍然需要先膨胀根视图。你可以做到这一点,每例如:

LayoutInflater inflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

View root = inflater.inflate(R.layout.some_layout, null); 

从这一点上就可以再次使用的例子,而是你会使其:

TextView mTextView = (TextView) root.findViewById(R.id.my_textview); 

对于你的问题的其余部分:当这是否完全取决于你想要做的事情,但是通常在onCreate中对它们进行膨胀将会很好。一旦你有了你的视图,你可以用mTextView.setVisibility()来设置其可见性。 它将采用静态值View.GONE,View.INVISIBLE或View.VISIBLE,因此您不必启动任何对象即可访问它们。

+0

这个技巧。不要忘记像我一开始那样将新的活动添加到清单中。谢谢! – GPGVM