Подобных вопросов множество, но все они касаются добавления представления в onCreateView() перед возвратом корневого макета. Я хочу добавить представление в середине выполнения кода, в onClick()
Обратите внимание, что это фрагмент, поэтому я не могу обновить пользовательский интерфейс без onCreateView():
public void onClick(View v) {
switch (v.getId()) {
case R.id.button:
//RelativeLayout Setup
RelativeLayout relativeLayout = new RelativeLayout(getActivity());
relativeLayout.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,
RelativeLayout.LayoutParams.MATCH_PARENT));
//ImageView Setup
ImageView imageView = new ImageView(getActivity());
//setting image resource
imageView.setImageResource(R.drawable.lit);
//setting image position
imageView.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,
RelativeLayout.LayoutParams.WRAP_CONTENT));
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.BELOW, R.id.button);
imageView.setLayoutParams(params);
//adding view to layout
relativeLayout.addView(imageView);
break;
}
}
Здесь я получаю экземпляр макета и изменяю его. Однако я не могу применить этот измененный макет фрагмента обратно в пользовательский интерфейс приложения. Как обновить интерфейс приложения после изменения фрагмента пользовательского интерфейса?
Подобных вопросов множество, но все они касаются добавления представления в onCreateView() перед возвратом корневого макета. Я хочу добавить представление в середине выполнения кода, в onClick()
[b]Обратите внимание, что это фрагмент, поэтому я не могу обновить пользовательский интерфейс без onCreateView():[/b]
[code]public void onClick(View v) { switch (v.getId()) { case R.id.button:
//RelativeLayout Setup RelativeLayout relativeLayout = new RelativeLayout(getActivity());
//setting image position imageView.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); params.addRule(RelativeLayout.BELOW, R.id.button);
imageView.setLayoutParams(params); //adding view to layout relativeLayout.addView(imageView);
break; } } [/code]
Здесь я получаю экземпляр макета и изменяю его. Однако я не могу применить этот измененный макет фрагмента обратно в пользовательский интерфейс приложения. Как обновить интерфейс приложения после изменения фрагмента пользовательского интерфейса?