(کممممممک) مشکل در لیست ویو (این مشکلم رفع بشه برنامم تمومه)
سلام دوستان یه برنامه نوشتم کدشو میزارم خواهشن اگه کسی میدونه کمک کنه برنامم آخرشه
اگه الان این برنامرو اجرا کنید کار میکنه و اطلاعاتو تو دیتابیس ذخیره میکنه ولی اگه اون اداپتر رو تو برای لیست ویو فعال کنم (تو MainActivity) لیست ویو ارور میده و از برنامه خارج میشه
اگه کسی میدونه کمک کنه
ممنون
MainActivity
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
EditText name,id;
Button save;
TextView num;
ListView list;
DatabaseManager db = new DatabaseManager(this);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name = (EditText)findViewById(R.id.name);
id = (EditText)findViewById(R.id.id);
num = (TextView)findViewById(R.id.num);
save = (Button)findViewById(R.id.save);
list = (ListView)findViewById(R.id.list);
// List<String> values = db.getAllContacts();
// final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
// android.R.layout.simple_list_item_1, values);
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String names = name.getText().toString();
int ids = Integer.parseInt(id.getText().toString());
Stu stu = new Stu();
stu.ID=ids;
stu.NAME = names;
db.addstu(stu);
final int count = db.getnamecount();
num.setText(count+"");
// list.setAdapter(adapter);
}
});
}
}
DatabaseManager
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.widget.ArrayAdapter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class DatabaseManager extends SQLiteOpenHelper {
public DatabaseManager(Context context){super(context, "database", null, 10);
}
@Override
public void onCreate(SQLiteDatabase db) {
String query =" CREATE TABLE tbl ( "+
" ID INT (0), " +
" NAME VARCHAR (20) " +
" );";
db.execSQL(query);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS TBL");
onCreate(db);
}
public boolean addstu (Stu stu){
boolean resalt;
try {
String query = "INSERT INTO tbl (ID,name) VALUES ("+stu.ID+",'"+stu.NAME+"')";
SQLiteDatabase db = this.getWritableDatabase();
db.execSQL(query);
db.close();
resalt= true;
}catch (Exception ex){
resalt = false;
}
return resalt;
}
public int getnamecount(){
int resalt =0;
String query = "SELECT * FROM tbl";
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(query, null);
resalt=cursor.getCount();
return resalt;
}
public List<String> getAllContacts()
{
String Query = "SELECT name FROM tbl";
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(Query, null);
List<String> notes = new ArrayList<String>();
if (cursor.moveToFirst())
{
do {
String note = cursor.getString(1);
// notes = new ArrayList<String>(Arrays.asList(note));
notes.add(note);
}
while (cursor.moveToNext());
}
return notes;
}
}
activity_main
<LinearLayout 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"
android:background="#ffffff"
android:orientation="vertical" >
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/name"
android:hint="NAME" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/id"
android:layout_gravity="right"
android:hint="ID" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="save"
android:id="@+id/save"
android:layout_gravity="center_horizontal" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/num"
android:layout_gravity="center_horizontal" />
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/list" />
</LinearLayout>
Stu
public class Stu {
public int ID;
public String NAME;
}
نقل قول: (کممممممک) مشکل در لیست ویو (این مشکلم رفع بشه برنامم تمومه)
سلام کلاس MainActivity
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
EditText name,id;
Button save;
TextView num;
ListView list;
DatabaseManager db = new DatabaseManager(this);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name = (EditText)findViewById(R.id.name);
id = (EditText)findViewById(R.id.id);
num = (TextView)findViewById(R.id.num);
save = (Button)findViewById(R.id.save);
list = (ListView)findViewById(R.id.list);
List<String> values = db.getAllContacts();
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, values);
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String names = name.getText().toString();
int ids = Integer.parseInt(id.getText().toString());
Stu stu = new Stu();
stu.ID=ids;
stu.NAME = names;
db.addstu(stu);
final int count = db.getnamecount();
num.setText(count+"");
adapter.add(names);
adapter.notifyDataSetChanged();
}
});
list.setAdapter(adapter);
}
}
متد getAllContacts() کلاس DatabaseManager
public List<String> getAllContacts()
{
String Query = "SELECT name FROM tbl";
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(Query, null);
List<String> notes = new ArrayList<String>();
if (cursor.moveToFirst())
{
do {
String note = cursor.getString(cursor.getColumnIndex("NAME"));
// notes = new ArrayList<String>(Arrays.asList(note));
notes.add(note);
}
while (cursor.moveToNext());
}
return notes;
}
نقل قول: (کممممممک) مشکل در لیست ویو (این مشکلم رفع بشه برنامم تمومه)
آقا دستت درد نکنه خیلی لطف کردی :قلب::قلب::قلب:
من تو تاپیک قبلی گفتم هر کی اینو برام حل کنه جایزه داره
در مقابل کاری که کردین ناچیزه شماره تلفنتونو یا ای دی تلگرامتونو برام بفرستین تا یه شارژ براتون بفرستم :تشویق::تشویق: