Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 即使我没有';我没叫它_Android_Android Layout_Android Fragments - Fatal编程技术网

Android 即使我没有';我没叫它

Android 即使我没有';我没叫它,android,android-layout,android-fragments,Android,Android Layout,Android Fragments,当我点击一个按钮时,我试图显示另一个片段,根据我发现的信息,我必须这样做: HomeFragment.java: 公共类HomeFragment扩展了片段{ 私有HomeViewModel HomeViewModel; 私有视图根; 创建视图时的公共视图(@NonNull final layoutiner充气机, 最终视图组容器,Bundle savedInstanceState){ homeViewModel= ViewModelProviders.of(this.get)(HomeViewM

当我点击一个按钮时,我试图显示另一个片段,根据我发现的信息,我必须这样做:
HomeFragment.java

公共类HomeFragment扩展了片段{
私有HomeViewModel HomeViewModel;
私有视图根;
创建视图时的公共视图(@NonNull final layoutiner充气机,
最终视图组容器,Bundle savedInstanceState){
homeViewModel=
ViewModelProviders.of(this.get)(HomeViewModel.class);
根=充气机。充气(R.layout.fragment\u home,container,false);
final TextView TextView=root.findviewbyd(R.id.text\u home);
homeViewModel.getText().observe(getViewLifecycleOwner(),new Observer()){
@凌驾
公共void onChanged(@Nullable String s){
textView.setText;
}
});
//-------------------------------------传入事件-------------------
ArrayList incomingApero=新的ArrayList();
初始列表(incomingApero);
AperoIncomingAdapter AdapterInComingAppro=新的AperoIncomingAdapter(this.getContext(),R.layout.apero\u cell\u layout,incomingApero);
最终ListView listIncomingApero=(ListView)root.findViewById(R.id.list\u apero);
列表输入文件设置适配器(适配器输入文件);
listIncomingApero.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共控件单击(适配器视图适配器,视图v,内部位置,长id){
AperoVersion selectedItem=(AperoVersion)适配器。getItemAtPosition(位置);
Log.v(“Root now”,“Root:+Root”);
//root=充气机。充气(R.layout.apero\u list\u布局,容器,假);
final FragmentTransaction ft=getFragmentManager().beginTransaction();
ft.replace(R.id.list_apero,new AperoDetailFragment(),“DisplayDetailsOfClickedPero”);
ft.commit();
Log.v(“CustomAdapterExample”,“Selected元素:”+selectedItem.getName());
Log.v(“Root now”,“Root:+Root”);
}
});
返回根;
}  
因此,我在点击事件中没有看到任何
addView
,然后我有
AperoDetailFragment.java

public类AperoDetailFragment扩展了Fragment{
私有视图根;
创建视图时的公共视图(@NonNull final layoutiner充气机,
最终视图组容器,Bundle savedInstanceState){
根=充气机。充气(R.布局.碎片\详细信息\纸,容器,假);
//-------------------------------------传入事件-------------------
ArrayList aperoList=新的ArrayList();
初始列表(开胃石);
//aperodapter adapter=newaperodapter(this.getContext(),R.layout.apero\u list\u layout,aperoList);
//最终ListView列表=(ListView)root.findViewById(R.id.list\u apero);
//list.setAdapter(适配器);
返回根;
}
私有void initList(ArrayList androidList){
...
}
}  
那么,我应该在哪里修改代码以显示我的AperoDetailFragment?或者我应该只使用activity?对于我来说,我看不到activity的用法,因为我想要的不是传入事件的列表,而是包含单击事件的详细信息的列表。如果有帮助,我可以提供有关布局/片段的更多信息

fragment\u apero\u detail.xml中,我是这样开始的:


...
堆栈跟踪错误:

2020-03-02 21:23:41.401 6781-6781/com.example.lapero E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.lapero, PID: 6781
java.lang.UnsupportedOperationException: addView(View) is not supported in AdapterView
    at android.widget.AdapterView.addView(AdapterView.java:489)
    at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:326)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1187)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1356)
    at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1434)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1497)
    at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:447)
    at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2169)
    at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1992)
    at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1947)
    at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1849)
    at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:413)
    at android.os.Handler.handleCallback(Handler.java:883)
    at android.os.Handler.dispatchMessage(Handler.java:100)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7356)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

@RyanMentley我得到了您可以在我的编辑中看到的错误,预期的行为是在
HomeFragment
中触发onclick时显示
AperoDetailFragment