2012-02-13 2 views
0

Я разрабатываю приложение для Android, которое устанавливает другой файл .xml с помощью setContentView (R.layout.file);Android SDK. setContentView не может вызывать функции активности

Момент, когда я это делаю, а затем попытаюсь использовать некоторые из функций в моем .java-файле, я не могу.

Как восстановить соединение с этим java-файлом после изменения вида?

@Override 

public boolean OnKeyUp(int arg1, KeyEvent arg2) 
{ 

switch (arg1) 
{ 

case KeyEvent.KEYCODE_MENU: 

setContentView(R.layout.file); 
return true; 

} 

return false; 

} 
+0

Можете ли вы уточнить, что вы подразумеваете под «... попробуйте использовать некоторые из функций в моем файле .java, я не могу.» Кроме того, я бы, вероятно, использовал LayoutInflater (см. Activity.getLayoutInflater), если вам нужны динамические части вашего интерфейса для XML. –

+0

Если вы загружаете приложения YouTUbe, Facebook, Twitter, Skype и т. Д., Страницы меняются с помощью быстрого скользящего эффекта, то есть смены страницы. Я интерпретирую, что это означает, что они используют вызов 'setContentView'. Когда вы впервые создаете новый проект Android SDK, вам автоматически присваивается файл .java, имя которого является именем вашего проекта. Как мне получить доступ к функциям в моем .java-файле после вызова setContentView? Этот .java-файл, где вызывается onCreate, onDestroy и onPause. Я также импортирую медиа и классы. –

+0

Помню ли я свою активность после setContentView? –

ответ

1

setContentView должно быть сделано в вашей OnCreate функции, а не в другой функции.

http://developer.android.com/reference/android/app/Activity.html

+0

setContentView уже вызван в onCreate, чтобы открыть основной файл xml. После того, как приложение загружено, я хочу, чтобы другие .xml-файлы были подняты с помощью setContentView. Как восстановить способность использовать функции в моем исходном файле .java? Например, как бы вы загрузили другую страницу нажатием кнопки, все еще имея возможность использовать свои оригинальные функции? –

Смежные вопросы