Я пытаюсь раздуть макет через пункт меню параметров. код, который я пытался использовать, выглядит следующим образом
public class Test01 extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
...
setContentView(R.Layout.main);
...
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
theMenu=menu;
MenuInflater inflater=getMenuInflater();
inflater.inflate(R.menu.main_optmenu, theMenu);
return(super.onCreateOptionsMenu(menu));
}
public boolean onOptionsItemSelected(MenuItem item)
{
switch(item.getItemId())
{
case R.id.item1:
LayoutInflater li=(LayoutInflater)getContext().getSystemService(LAYOUT_INFLATER_SERVICE);
li.inflate(R.layout.mylayout,this,true);
case R.id.item2:
...
default:
....
}
}
}
я получаю 2 ошибки - «getContext () не определен», поэтому после поиска я изменил его на getApplicationContext (), после чего я могу получить LAYOUT_INFLATER_SERVICE.
Но затем во второй строке параметр ViewGroup не принимается. Сообщение об ошибке: «Метод inflate (int, ViewGroup, boolean) в типе LayoutInflater неприменим для аргументов (int, test01, boolean)»
Кажется, я не указываю правильные значения параметров. Само меню работает нормально, так как я могу заменить LayoutInflater на setContentView
Я был бы очень признателен за вашу помощь, "спасибо