小编Het*_*wos的帖子

android.widget.RelativeLayout $ LayoutParams无法强制转换为android.widget.AbsListView $ LayoutParams

在众多教程和示例项目之后,我得到了以下代码,该代码应该在ListView中填充包含Line对象中多个值的行.

作为一个新手程序员,我不能为我的生活弄清楚我的代码在哪里失败.任何帮助将非常感激!

如果我遗漏了重要信息,请告诉我,我会更新这个问题.

在Fragment中启动它的代码:

    @Override
    public void onActivityCreated(Bundle savedInstanceState){
        super.onActivityCreated(savedInstanceState);
        Intent i = getActivity().getIntent();

        if (i.getSerializableExtra("ChosenWorkorder") != null){

            Workorder selectedWorkorder = (Workorder) i.getSerializableExtra("ChosenWorkorder");                

            ArticlesListAdapter articlesListAdapter = new ArticlesListAdapter(getActivity(), R.layout.articles_list_row, selectedWorkorder.GetAllLines());

            ListView articlesList = (ListView) getActivity().findViewById(R.id.ArticlesList);
            articlesList.setAdapter(articlesListAdapter);

        }
    }
Run Code Online (Sandbox Code Playgroud)

Custom ArrayAdapter:

    public class ArticlesListAdapter extends ArrayAdapter<Line> {

    private List<Line> lineList;
    private Context context;

    public ArticlesListAdapter(Context context, int textViewResourceId, List<Line> objects) {
    super(context, textViewResourceId, objects);
        this.lineList = objects;
        this.context = context;
    }

    public int getCount() {
        return lineList.size();
    }

    public Line getItem(int …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-adapter

8
推荐指数
1
解决办法
2万
查看次数

OnItemClickListener无法解析为一个类型(在Fragment内)

这似乎是一个常见的问题,通常通过添加正确的导入来解决.但就我而言,它似乎没有解决任何问题.我是一个相当新的编程,特别是在Android中,所以忍受我的愚蠢错误(如果适用).

我有以下导入和代码,但Eclipse一直说AdapterView.onItemClickListener无法解析为类型.任何帮助将非常感激.

import android.app.Activity;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

public static class MainApplicationFragment extends Fragment {
    private ArrayAdapter<String> listAdapter;
    public MainApplicationFragment() {

    }

    private void PopulateWorkorderList() throws IOException {

        StorageAccess access = new StorageAccess();
        listAdapter = new ArrayAdapter<String>(getActivity(), R.layout.workorder_list_row);

        for (Workorder WO : access.GetAllWorkorders()) {
            listAdapter.add(WO.getWorkorderNumber().toString());
        }
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) …
Run Code Online (Sandbox Code Playgroud)

android android-listview android-fragments

5
推荐指数
1
解决办法
4582
查看次数