Android,自定义ListView

时间:2011-05-06 08:01:21

标签: android

我如何决定ListView中每一行的大小?

我的问题是我有一个文本列表,现在每个文本(每行)的长度不同但文本的大小是相同的,所以问题是如果文本很大我的ListView将无法调整对于文本,将削减部分内容。

我使用这个类来构建ListView:

    private class ListAdapter extends ArrayAdapter<Medicaments> {  // --CloneChangeRequired
    private ArrayList<Med> mList;  // --CloneChangeRequired
    private Context mContext;

    public ListAdapter(Context context, int textViewResourceId,ArrayList<Med> list) { // --CloneChangeRequired
        super(context, textViewResourceId, list);
        this.mList = list;
        this.mContext = context;
    }

    public View getView(int position, View convertView, ViewGroup parent)
    {
        View view = convertView;
        try{
        if (view == null) {
            LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            view = vi.inflate(R.layout.singleresult, null);     // --CloneChangeRequired(list_item)
        }

        final Med listItem = mList.get(position);   // --CloneChangeRequired

        String Res=listItem.getMed().substring(0, 1).toUpperCase()+listItem.getMed().substring(1).toLowerCase();
         Res=WordUtils.capitalize(Res);
        if (listItem != null) {


            ( (TextView) view.findViewById(R.id.resultTextView) ).setText( Res+"\n");

        }}catch(Exception e){
            Log.i(ResultView.ListAdapter.class.toString(), e.getMessage());             
        }
        return view;
    }




}

感谢您的帮助!!

1 个答案:

答案 0 :(得分:0)

使用 android:layout_height="wrap_content" 用于文本视图以及列表中每个项目的父布局。