2016-12-19 7 views
1

私はアンドロイドを初めて使っています。私はlistviewを使っているアプリケーションを持っていて、各リストの表示項目に番号を付ける必要があります。 同様に、アンドロイドのリストビューアイテムに番号を与える方法

1リスト項目

2リスト項目

3リスト項目

MainActivity.java

public class MainActivity extends AppCompatActivity { 
private OrderDbManager orderDbManager; 


private ListView listView; 

private SimpleCursorAdapter adapter; 

final String[] from = new String[] { OrderDbHelper.FOOD_NAME, 
     OrderDbHelper.QUANTITY, OrderDbHelper.PRICE }; 

final int[] to = new int[] {R.id.tvFoodName, R.id.tvItemQuantity, R.id.tvItemPrice }; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    orderDbManager = new OrderDbManager(this); 
    orderDbManager.open(); 

    final Cursor cursor = orderDbManager.fetch(); 

    listView = (ListView) findViewById(R.id.listView); 
    listView.setEmptyView(findViewById(R.id.empty)); 

    adapter = new SimpleCursorAdapter(this, R.layout.list_item, cursor, from, to, 0); 
    adapter.notifyDataSetChanged(); 

    LayoutInflater layoutInflater = getLayoutInflater(); 
        listView.addHeaderView(layoutInflater.inflate(R.layout.cart_header,listView, false)); 
    listView.setAdapter(adapter); 
    } 
    public class MyAdapter extends SimpleCursorAdapter { 
    public MyAdapter(Context context, int layout, Cursor c, 
    String[] from,int[] to) { 
     super(context, layout, c, from, to); 

    } 


    @Override 
    public int getCount() { 
     return 0; 
    } 

    @Override 
    public Object getItem(int arg0) { 
     return null; 
    } 

    @Override 
    public long getItemId(int arg0) { 
     return 0; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     LayoutInflater layoutInflater =(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     convertView = layoutInflater.inflate(R.layout.list_item, null, true); 
     TextView txt= (TextView) convertView.findViewById(R.id.tvSlNo); 
     txt.setText(position + 1); 

     return convertView; 
    } 

    } 
} 

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" > 

<ListView 
    android:id="@+id/listView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" > 
</ListView> 
私はtvSlNoに番号を設定したい

list_item.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:layout_margin="5dp" 
android:minHeight="50dp" 
android:orientation="horizontal" 
android:weightSum="1"> 

<TextView 
    android:id="@+id/tvSlNo" 
    android:layout_width="0dip" 
    android:layout_height="match_parent" 
    android:gravity="center" 
    android:textStyle="normal" 
    android:textColor="@android:color/black" 
    android:layout_weight="0.1" /> 

<TextView 
    android:id="@+id/tvFoodName" 
    android:layout_width="0dip" 
    android:layout_height="match_parent" 
    android:layout_weight="0.5" 
    android:gravity="center" 
    android:textStyle="normal" 
    android:textColor="@android:color/black" 
    android:text=""/> 


<TextView 
    android:id="@+id/tvItemQuantity" 
    android:layout_width="0dip" 
    android:layout_height="match_parent" 
    android:layout_weight="0.15" 
    android:textStyle="normal" 
    android:textColor="@android:color/black" 
    android:gravity="center"/> 

<TextView 
    android:id="@+id/tvItemPrice" 
    android:layout_width="0dip" 
    android:layout_height="match_parent" 
    android:layout_weight="0.25" 
    android:gravity="center" 
    android:textStyle="normal" 
    android:textColor="@android:color/black" 
    android:text=""/> 
    </LinearLayout> 

。 助けてください

+0

ポストしてください。 –

+0

私はSimpleCursorAdapterを使用していますが、他のアダプタクラスは持っていません – Rohith

+0

あなたのリストを設定するために独自のアダプタを作成する必要があります。インターネット経由で多くの例があります。 –

答えて

0

あなたのlistViewAdapterのgetView()メソッドでは、position変数を使用してTextViewに設定するだけです。 0から始まってから位置に1を加える必要があるかもしれません。そのため、(位置+ 1)を使用してTextViewに設定してください。

関連する問題