raha.scientific
دوشنبه 27 اردیبهشت 1395, 18:50 عصر
باسلام
من توی برنامم وقتی وارد اکتیویتی ای که قراره لیست ویو رو نمایش بده میشم برنامم اجرا نمیشه و
با پیغام Unfortunately.....has stoped متوقف میشه
هرکار می کنم درست نمیشه و اصلا نمیتونم برنامم رو جلو ببرم به ظاهر کدها هیچ مشکلی ندارن
من قسمت های مرتبط کد رو میزارم اگر راهنمایی بفرمایید ممنون میشم
برنامه:
اکتیویتی اول چندتا imageButton داره که باکلیک روی اولین باتن وارد اکتیویتی ای میشیم که باید در یک لیست ویو نام
عنوان هایی رو از دیتابیس گرفته و نمایش بده (لیست ویو رو شخصی سازی کردم )
کدهای کلاس نمایش لیست ویو:
if(hadithha.size()==0)
{
String destpath= "/data/data/" +getPackageName() +"/databases";
try{
copyDB(getBaseContext().getAssets().open("mydb"), new FileOutputStream(destpath +"/databases"));
Log.i(db.TAG, "database copy shod");
hadithha=db.getAllFields();
refreshDisplay();
Log.i(DBAdapter.TAG,hadithha.size() +"= tedade hadithha");
}
catch (FileNotFoundException e) {
// TODO: handle exception
e.printStackTrace();
}
catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
}
}
else {
refreshDisplay();
}
}
////////////////// CopyDB /////////// ////
public void copyDB(InputStream inputstream, OutputStream outputstream) throws IOException{
byte[] buffer = new byte[1024];
int length;
while((length =inputstream.read(buffer))>0)
{
outputstream.write(buffer, 0, length);
}
inputstream.close();
outputstream.close();
}
/////////// Namayeshe List(Hadithha) ////////////
public void refreshDisplay() {
Log.i(DBAdapter.TAG,hadithha.size() +" = tedade hadithha");
ArrayAdapter<Hadith> adapter = new HadithAdapter_item(this, hadithha);
setListAdapter(adapter);
}
}
به جای این نام(database) نام تیبل رو هم که میزارم بازم فرقی نمی کنه.
__________________________________________________ __________________________________________________ _________________________________________________
بخشی از پیغام ها در اجرای log:
140453
من توی برنامم وقتی وارد اکتیویتی ای که قراره لیست ویو رو نمایش بده میشم برنامم اجرا نمیشه و
با پیغام Unfortunately.....has stoped متوقف میشه
هرکار می کنم درست نمیشه و اصلا نمیتونم برنامم رو جلو ببرم به ظاهر کدها هیچ مشکلی ندارن
من قسمت های مرتبط کد رو میزارم اگر راهنمایی بفرمایید ممنون میشم
برنامه:
اکتیویتی اول چندتا imageButton داره که باکلیک روی اولین باتن وارد اکتیویتی ای میشیم که باید در یک لیست ویو نام
عنوان هایی رو از دیتابیس گرفته و نمایش بده (لیست ویو رو شخصی سازی کردم )
کدهای کلاس نمایش لیست ویو:
if(hadithha.size()==0)
{
String destpath= "/data/data/" +getPackageName() +"/databases";
try{
copyDB(getBaseContext().getAssets().open("mydb"), new FileOutputStream(destpath +"/databases"));
Log.i(db.TAG, "database copy shod");
hadithha=db.getAllFields();
refreshDisplay();
Log.i(DBAdapter.TAG,hadithha.size() +"= tedade hadithha");
}
catch (FileNotFoundException e) {
// TODO: handle exception
e.printStackTrace();
}
catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
}
}
else {
refreshDisplay();
}
}
////////////////// CopyDB /////////// ////
public void copyDB(InputStream inputstream, OutputStream outputstream) throws IOException{
byte[] buffer = new byte[1024];
int length;
while((length =inputstream.read(buffer))>0)
{
outputstream.write(buffer, 0, length);
}
inputstream.close();
outputstream.close();
}
/////////// Namayeshe List(Hadithha) ////////////
public void refreshDisplay() {
Log.i(DBAdapter.TAG,hadithha.size() +" = tedade hadithha");
ArrayAdapter<Hadith> adapter = new HadithAdapter_item(this, hadithha);
setListAdapter(adapter);
}
}
به جای این نام(database) نام تیبل رو هم که میزارم بازم فرقی نمی کنه.
__________________________________________________ __________________________________________________ _________________________________________________
بخشی از پیغام ها در اجرای log:
140453