所以我试图通过点击默认模板导航栏上的按钮来启动一个片段,我使用片段事务和提交,但应用程序崩溃,无法找到隐藏在android监视器错误部分中的活动下降。我得到这个崩溃使用替换和添加。片段:无法找到活动?
这里是片段我想补充:
public class FoodScroll extends ListFragment implements AdapterView.OnItemClickListener{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
return inflater.inflate(R.layout.fragment_foodscroll, container, false);
}
@Override
public void onActivityCreated(Bundle savedInstanceState){
super.onActivityCreated(savedInstanceState);
ArrayAdapter adapter = ArrayAdapter.createFromResource(getActivity(), R.array.foods, android.R.layout.simple_list_item_1);
setListAdapter(adapter);
getListView().setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id){
Toast.makeText(getActivity(), "Item" + position, Toast.LENGTH_SHORT).show();
}
}
这里是我想将它放在活动:
public class MainActivity extends AppCompatActivity{
private FragmentManager manager = getFragmentManager();
private FragmentTransaction transaction = manager.beginTransaction();
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
= new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.navigation_home:
FoodScroll foods = new FoodScroll();
transaction.replace(R.id.container, foods);
transaction.commit();
return true;
case R.id.navigation_dashboard:
return true;
case R.id.navigation_notifications:
return true;
}
return false;
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
}
}
package语句是不缺的,我把它在片段之外。 道歉,如果我不正确地放置代码或东西。
该logcat工作不正常,我不得不重新启动android工作室,让它再次工作。这是显示的内容
03-15 22:57:17.090 3238-3238/? I/art: Not late-enabling -Xcheck:jni (already on)
03-15 22:57:17.090 3238-3238/? W/art: Unexpected CPU variant for X86 using defaults: x86
03-15 22:57:17.110 3238-3245/? E/art: Failed sending reply to debugger: Broken pipe
03-15 22:57:17.110 3238-3245/? I/art: Debugger is no longer active
03-15 22:57:17.110 3238-3245/? I/art: Starting a blocking GC Instrumentation
03-15 22:57:17.199 3238-3238/? W/System: ClassLoader referenced unknown path: /data/app/com.namename.www.name-2/lib/x86
03-15 22:57:17.253 3238-3238/? W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
03-15 22:57:17.393 3238-3238/? I/InstantRun: Starting Instant Run Server for com.namename.www.name
03-15 22:57:17.454 3238-3262/? I/OpenGLRenderer: Initialized EGL, version 1.4
03-15 22:57:17.454 3238-3262/? D/OpenGLRenderer: Swap behavior 1
03-15 22:57:17.454 3238-3262/? W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
03-15 22:57:17.454 3238-3262/? D/OpenGLRenderer: Swap behavior 0
03-15 22:57:17.488 3238-3238/? W/art: Before Android 4.1, method int android.support.v7.widget.ListViewCompat.lookForSelectablePosition(int, boolean) would have incorrectly overridden the package-private method in android.widget.ListView
03-15 22:57:25.564 3238-3238/com.chilosomexicanbistro.www.chiloso D/AndroidRuntime: Shutting down VM
03-15 22:57:25.564 3238-3238/com.chilosomexicanbistro.www.chiloso E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.namename.www.name, PID: 3238
java.lang.RuntimeException: Content has view with id attribute 'android.R.id.list' that is not a ListView class
at android.app.ListFragment.ensureList(ListFragment.java:402)
at android.app.ListFragment.onViewCreated(ListFragment.java:203)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1010)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1171)
at android.app.BackStackRecord.run(BackStackRecord.java:816)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1578)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:483)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
请发布堆栈跟踪。 http://stackoverflow.com/questions/23353173/uncomfort-myapp-has-stopped-how-can-i-solve-this –
堆栈跟踪与您提供的代码不匹配。该代码不会在'onNavigationItemSelected()'中调用'startActivity()'。如果您的应用程序与您显示的代码崩溃,则需要提供该堆栈跟踪。如果它没有从代码中崩溃,你需要更好地解释问题是什么。 –
我不知道,那是什么在错误的Android监视器选项卡。当我点击应该添加或替换片段的按钮时,该应用崩溃,说它已停止。 –