0

I have a ListView it has three TextViews and a Button. I have to get data's form one table to populate the TextViews and the Button is populated by data from other table. I have populated the TextViews from first table using CursorAdapter. Now i don't know how to populate the non-clickable Button in the same ListView item from second database table. Is there any way to populate Custom ListView items from two separate tables?

My DBHelper is

public class DatabaseHelper extends SQLiteOpenHelper {
public static final String db_name="unitdb";
public static final int version=1;
Context context;

public DatabaseHelper(Context context){
    super(context, db_name, null, version);
    this.context=context;
}

@Override
public void onCreate(SQLiteDatabase db){

    db.execSQL("CREATE TABLE bikeTable( _id INTEGER PRIMARY KEY AUTOINCREMENT, userName TEXT, mobileNo INTEGER, address TEXT, uSerialNo INTEGER UNIQUE, uImeiNo integer, uCimiNo INTEGER, uContactNo INTEGER, dealerCode INTEGER, dealerContactNo INTEGER, vehicleType TEXT)");
    Toast.makeText(context,"Database Created",Toast.LENGTH_SHORT).show();
    Log.i("dbcreate", "Database Created");
    Log.i("Table Created", "Bike Tracker Table Created");

    db.execSQL("CREATE TABLE dealerTable(_id INTEGER PRIMARY KEY AUTOINCREMENT, dealerName TEXT, mobileNo INTEGER, dealerCode INTEGER UNIQUE, address TEXT)");
    Log.i("Table Created", "Dealer Details Table Created");

    db.execSQL("CREATE TABLE statusTable(_id INTEGER PRIMARY KEY AUTOINCREMENT, userName TEXT, mobileNo INTEGER, serialNo INTEGER, deviceContact INTEGER, sentTime TEXT, sent TEXT, delivered TEXT, reply TEXT )");
    Log.i("Table Status Created","Status Table Created");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    if (oldVersion>=newVersion)

        return;

    if (oldVersion==1){

        Log.d("New Version","Data's can be Upgraded");

    }

    Log.d("Sample Data", "onUpgrade:" + newVersion);

}

public Cursor getAllDataBike(){

    String query= "select rowid _id,* from bikeTable where vehicleType='Two Wheeler'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getAllDataCar(){

    String query= "select rowid _id,* from bikeTable where vehicleType='Car'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getAllDataCv(){

    String query= "select rowid _id,* from bikeTable where vehicleType='Commercial Vehicle'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getDealers(){

    String query="select rowid _id,* from dealerTable";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor searchCustomerBike(String strFilter){

    String query;
    query="Select rowid _id,* from bikeTable where uSerialNo='"+strFilter+"' AND vehicleType='Two Wheeler'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor searchCustomerCar(String strFilter){

    String query;
    query="Select rowid _id,* from bikeTable where uSerialNo='"+strFilter+"' AND vehicleType='Car'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor searchCustomerCv(String strFilter){

    String query;
    query="Select rowid _id,* from bikeTable where uSerialNo='"+strFilter+"' AND vehicleType='Commercial Vehicle'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getActivated(){

    String query="Select rowid _id,* from bikeTable where userName IS NOT NULL AND vehicleType='Two Wheeler'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getNotActivated(){

    String query="Select rowid _id,* from bikeTable where userName IS NULL AND vehicleType='Two Wheeler'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getActivatedCar(){

    String query="Select rowid _id,* from bikeTable where userName IS NOT NULL AND vehicleType='Car'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getNotActivatedCar(){

    String query="Select rowid _id,* from bikeTable where userName IS NULL AND vehicleType='Car'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getActivatedCv(){

    String query="Select rowid _id,* from bikeTable where userName IS NOT NULL AND vehicleType='Commercial Vehicle'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getNotActivatedCv(){

    String query="Select rowid _id,* from bikeTable where userName IS NULL AND vehicleType='Commercial Vehicle'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);

}

public Cursor getStatus(String srNo){
    String query="select rowid _id,* from statusTable where serialNo='"+srNo+"'";
    SQLiteDatabase db=this.getReadableDatabase();
    return db.rawQuery(query,null);
}

}

My CursorAdapter is

public class DisplayAdapter extends CursorAdapter{

DatabaseHelper databaseHelper;
SQLiteDatabase db;

@SuppressWarnings("deprecation")
public DisplayAdapter(Context context,Cursor c){
    super(context,c);
}

@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
    LayoutInflater inflater = LayoutInflater.from(parent.getContext());
    View retView = inflater.inflate(R.layout.card_items, parent, false);

    return retView;
}

@Override
public void bindView(View view, Context context, Cursor cursor) {
    TextView tvUserName=(TextView)view.findViewById(R.id.textView27);
    tvUserName.setText(cursor.getString(2));

    TextView tvMobile=(TextView)view.findViewById(R.id.textView28);
    tvMobile.setText(cursor.getString(3));

    TextView tvSerail=(TextView)view.findViewById(R.id.textView29);
    tvSerail.setText(cursor.getString(5));
}

}

Praveen Kumar
  • 43
  • 1
  • 1
  • 9

0 Answers0