2015-10-06 2 views
0
|Title | Subcategory | Details | 
|-------------------------------| 
|Song | TAMIL SONG | Yuvan |  
|-------------------------------| 
|Song | English |Tom  | 
|-------------------------------| 
|Movie | mal   | abcd | 
|-------------------------------| 
|Movie | Telugu  |TomCuirse | 
|-------------------------------| 
|Sounds | mal   | abcd | 

У меня есть список имен столбцов, подобных этому. Я хочу отобразить поля подкатегории на основе выбора Title. Как мы можем написать запрос для этого и как мы можем привязать это к ArrayAdapter в listview? ДАННЫЕ Канот быть Displyed в ListView TextView пуст, но ListView доступенКаков запрос для получения имени столбца?

Subcategor Класс

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.subcategory_layout); 
    listView= (ListView) findViewById(R.id.listView2); 

    //Intent i = getIntent(); 

    dbHelper = new SqlLiteDbHelper(this); 
    try { 
     dbHelper.openDataBase(); 
    } catch (SQLException e) { 
     e.printStackTrace(); 
    } 
    sqLiteDatabase=dbHelper.getReadableDatabase(); 
    cursor=dbHelper.getsubcategory(sqLiteDatabase); 
    subcategoryAdapter = new SubcategoryAdapter(getApplicationContext(),R.layout.sublist_item); 
    listView.setAdapter(subcategoryAdapter); 
    if (cursor.moveToFirst()) 
    { 
     do { 
      String subcategory; 
      subcategory=cursor.getString(0); 
      foodSupply= new FoodSupply(subcategory); 
      subcategoryAdapter.add(foodSupply); 

     }while (cursor.moveToNext()); 
    }enter code here 

SubcategoryAdapter

public class SubcategoryAdapter extends ArrayAdapter { 
List list = new ArrayList(); 
public SubcategoryAdapter(Context context, int resource) { 
    super(context, resource); 
} 





    @Override 
    public void add (Object object){ 
    super.add(object); 
    list.add(object); 
} 
    static class LayoutHandler { 
     TextView SUBCATEGORY; 
    } 

    @Override 
    public int getCount() { 
    return list.size(); 
} 

    @Override 
    public Object getItem (int position){ 
    return list.get(position); 
} 

    @Override 
    public View getView (int position, View convertView, ViewGroup parent){ 

    View row = convertView; 
    LayoutHandler layoutHandler; 
    if (row == null) { 
     LayoutInflater layoutInflater = (LayoutInflater) this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     row = layoutInflater.inflate(R.layout.sublist_item, parent, false); 
     layoutHandler = new LayoutHandler(); 
     layoutHandler.SUBCATEGORY = (TextView) row.findViewById(R.id.textView2); 
     row.setTag(layoutHandler); 
    } else { 
     layoutHandler = (LayoutHandler) row.getTag(); 
    } 
    FoodSupply foodSupply = (FoodSupply) this.getItem(position); 
    layoutHandler.SUBCATEGORY.setText(foodSupply.getSubcategory()); 
    return row; 
}enter code here 

ответ

1

Вы должны использовать 'Где Params', чтобы выбрать то, что вы хотите вернуться из запроса. Получить курсор, как так

Cursor cursor = db.query("Your_table_name", "Subcategory", "Title = ?", new String[] { "Song" }, "", "", ""); 

Тогда вы итерацию над ней:

while(cursor.moveToNext()) { 
    String subCategory = cursor.getString(0); 
} 

После этого вы можете хранить подкатегорию в списке и вставить, что в ArrayAdapter.

+0

Спасибо, но когда я нажму название заголовка в списке, поля подкатегории, связанные с этим названием, будут отображаться в другом списке! поэтому мы хотим использовать курсор в этом setOnItemClickListener ?? – Karthick

+0

Вы можете щелкнуть заголовок, а затем вставить его в запрос onItemClickListener, если это соответствует вашему прецеденту. Вышеупомянутый код - это просто средство для получения списка подкатегорий, как вы его используете впоследствии зависит от вас. – RobVoisey

+0

Поля уже вставлены !! Я просто хочу отображать имена столбцов в списке. Я уже показываю заголовок в списке, используя Arrayadapter с пользовательским макетом, когда вы нажимаете этот заголовок, поля, связанные с этими заголовками, должны отображаться в новом Активность ... plz help 3,4 days im lock there and i dont now, как это сделать :( – Karthick

Смежные вопросы