Я решил переключиться с нескольких действий на одно действие, которое переключается между фрагментами, однако приложение теперь сбой.Android crashing at getSupportFragmentManager()
Вот активность я добавляю фрагмент в
общественного класса MainActivity расширяет SherlockFragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MyFragment fragment = new MyFragment();
fragment.setArguments(getIntent().getExtras());
getSupportFragmentManager().beginTransaction()
.add(R.id.fragment_container, fragment).commit();
}
Вот фрагмент его наблюдатель и имеет функциональные возможности, но для экономии места плохого просто показать создание
public class MyFragment extends SherlockFragment implements Observer{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.my_fragment, container, false);
}
Heres my_fragment.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/my_fragment"
android:layout_width="match_parent"
android:layout_height="match_parent" >
... HAS SOME TEXT VIEWS HERE!
</RelativeLayout>
Катастрофа я получаю
02-15 16:17:41.079: E/AndroidRuntime(18668): FATAL EXCEPTION: main
02-15 16:17:41.079: E/AndroidRuntime(18668): java.lang.RuntimeException:
Unable to start activity ComponentInfo{com.example.myapp/com.example.myapp.MainActivity}:
java.lang.IllegalArgumentException:
No view found for id 0x7f040036 for fragment MyFragmentt{41a05910 #0 id=0x7f040036}
Может кто-нибудь помочь мне здесь? Я не могу понять, что вызывает это. Я знаю, что если я прокомментирую getSupportFragmentManager() в основном действии (верхний блок кода в этом сообщении), он будет запускать просто не рисовать что-либо в моем фрагменте.
UPDATE
frame_container, который я не уверен, где разместить
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
ли вы объявивший 'FrameLayout' с этим идентификатором' R.id.fragment_container'? – hardartcore
У меня есть это, но я не уверен, что если у меня есть это место в правильном месте, это должно быть его собственное xml fle или оно должно быть в my_fragment.xml или в my activity_main.xml? Первый раз, используя фрагменты, чтобы я мог совершить тупую ошибку –
user2015852
Для того, чтобы было легче читать, я добавил контейнер рамы на начальный вопрос – user2015852