Android Material Stepper - 如何在Fragment中创建ListView?

时间:2017-06-03 12:43:55

标签: android listview android-fragments

我是Android编程以及Java的新手,现在我正在创建一个需要向导的应用程序。所以,我正在使用Stepstone的一个名为Android Material Stepper的步进库。 在这个向导中,我有3个步骤。第一步(First Fragment)包含一个editText,其中用户用某种模式填充一些文本。然后文本传递到第二步(Second Fragment),在此步骤中,editText被拆分并转换为数组,并以ListView的形式显示给最终用户。现在这是问题所在,我无法弄清楚如何做到这一点。 这是我的第二个片段代码。

public class FragmentStep2 extends Fragment implements BlockingStep{TextView stepContent;
private DataManager dataManager;
onProceedListener onProceedListener;
private String passedData;

@Override
public void onAttach(Context context)
{
    super.onAttach(context);
    // TODO: Implement this method
    if(context instanceof onProceedListener | context instanceof DataManager) {
        onProceedListener = (onProceedListener) context;
        dataManager = (DataManager) context;
    } else {
        throw new IllegalStateException("Activity must implement OnProceedListener");
    }
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
    View v = inflater.inflate(R.layout.quick_lfl_step2, container, false);
    return v;
}

@Override
public void onSelected()
{
    // TODO: Implement this method
    passedData = dataManager.getData();
    String[] arrayLfl = passedData.split("@");
    ListAdapter adapter = new ArrayAdapter<String>(getActivity(), R.layout.quick_lfl_row, R.id.absenLflList, arrayLfl);
    ListView listView = (ListView) getView().findViewById(R.id.list_lfl);
    listView.setAdapter(adapter);
}}

这是一个logcat

  

06-03 19:53:03.925 I / ActivityManager(802):显示   tk.divabyan.ig / .activity.DefaultTabsActivity:+ 188ms(总计   + 35m19s326ms)06-03 19:53:10.246 E / AndroidRuntime(2162):处​​理:tk.divabyan.ig,PID:2162 06-03 19:53:10.246 E / AndroidRuntime(2162):     在   tk.divabyan.ig.activity.QuickLfl.FragmentStep2.onSelected(FragmentStep2.java:76)   06-03 19:53:10.246 E / AndroidRuntime(2162):at   tk.divabyan.ig.activity.FragmentStep1.onNextClicked(FragmentStep1.java:68)

1 个答案:

答案 0 :(得分:0)

原来问题是因为我给列表适配器提供了错误的资源ID。