رفتن به مطلب
برای استفاده از انجمن و عضـویت کلیک کنید.

AnswerCenter

مرکز پاسخگویی به سوالات برنامه نویسی

  • مرجع پاسخگویی
  • تولید آموزش
  • سفارش پروژه

درخواست سفارش پروژه

اطلاعیه

کاربر گرامی

به انجمن برنامه نویسی AnswerCenter.ir خوش آمدید

 برای استفاده از تمامی امکانات سایت لطفا در انجمن عضو شوید


t0p

کاربر عادی
  • تعداد ارسال ها

    8
  • تاریخ عضویت

  • آخرین بازدید

اعتبار در سایت

2 متوسط

درباره t0p

  • درجه
    کاربر تازه وارد
  1. ممنون،اما برای نمایش این کدها رو زدم جواب نداد... واسه ریسایکلرویو همین کد درست هست اما لیست ویو خیر adapter: public class MAdapter extends ArrayAdapter<Model>{ List<Model> itemes= Collections.emptyList(); public MAdapter(Context context, ArrayList<Model> records){ super(context,0,records); } public View getView(int position, View convertView, ViewGroup parent){ // String item=getItem(position); if (convertView==null){ convertView= LayoutInflater.from(getContext()).inflate(R.layout.item,parent,false); } final TextView txt=(TextView)convertView.findViewById(R.id.textView); final TextView txt2=(TextView)convertView.findViewById(R.id.textView2); txt2.setText(itemes.get(position).getFarsi()); txt.setText(itemes.get(position).getEng()); return convertView; } } MainActivity: public class MainActivity extends AppCompatActivity { //private ArrayList<Model> arrayList =new ArrayList<Model>(); private List<Model> a= Collections.emptyList(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ListView listView=(ListView)findViewById(R.id.listv); MyDatabase db=new MyDatabase(this); MAdapter mAdapter=new MAdapter(this,a); listView.setAdapter(mAdapter); } }
  2. اگر بخواهیم دو یا چند ستون از جدول در لیست ویو نمایش داده شود کد ها به چه صورت میشود؟ طبق این کد فقط یک ستون از جدول قابل نمایشه با تشکر
  3. t0p

    تنظیمات

    من طبق این آموزش تنظیمات برای متن پروژه ام ساختم و کاربردی بود باید کلاس رو در اکتیویتی ها فراخوانی کنید و تنظیمات فونت و سایز فونت برای textview تنظیم و ست شود آموزش ساخت تنظیمات برای برنامه - آموزش های تصویری - مرکز پاسخگویی به سوالات برنامه نویسی
  4. باسلام خدمت اساتید سایت من طبق یه آموزش ساخت ریساکلرویو با دیتابیس آماده پروژه ای رو ساختم اما مشکل در INSERT کردن آیتم های لیست به جدول علاقه ها هست که ارور نداره اما اضافه نمیشود کد های کامل بدین شرح میباشد: ممنون کمک کنید و حل بشه DatabaseHelper.java: public class DatabaseHelper extends SQLiteOpenHelper { private static String DB_NAME= "Data.db"; private static String DB_PATH=""; private SQLiteDatabase myDatabase; private Context myContext; public DatabaseHelper(Context context) { super(context, DB_NAME, null, 1); if(Build.VERSION.SDK_INT>=15) { DB_PATH = context.getApplicationInfo().dataDir + "/databases/"; } else{ DB_PATH= Environment.getDataDirectory() + "/data/" + context.getPackageName() + "/databases/"; } this.myContext=context; } @Override public void onCreate(SQLiteDatabase db) { } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { String sql="database already exist"; db.execSQL(sql); } public void checkAndCopyDatabase(){ boolean dbExist=checkDatabase(); if (dbExist){ Log.d("TAG","database already exist"); } else {this.getReadableDatabase();} try { copyDatabase(); } catch (IOException e) { e.printStackTrace(); Log.d("TAG","Error copy database"); } } public boolean checkDatabase(){ SQLiteDatabase checkDB=null; try { String myPath=DB_PATH+DB_NAME; checkDB=SQLiteDatabase.openDatabase(myPath,null,SQLiteDatabase.OPEN_READWRITE); }catch (SQLiteException e){} if(checkDB !=null){ checkDB.close(); } return checkDB !=null ? true : false; } public void copyDatabase()throws IOException{ InputStream myInput=myContext.getAssets().open(DB_NAME); String outFileName=DB_PATH + DB_NAME; OutputStream myOutput=new FileOutputStream(outFileName); byte[] buffer=new byte[1024]; int length; while ((length = myInput.read(buffer)) > 0){ myOutput.write(buffer, 0,length); } myOutput.flush(); myOutput.close(); myInput.close(); } public void openDatabase(){ String myPath=DB_PATH + DB_NAME; myDatabase=SQLiteDatabase.openDatabase(myPath,null,SQLiteDatabase.OPEN_READWRITE); } public synchronized void close(){ if (myDatabase !=null){ myDatabase.close(); } super.close(); } public Cursor QueryData(String query){ return myDatabase.rawQuery(query,null); } } Item ها: public class Item { int id; String dis; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getdis() { return dis; } public void setHadism(String dis) { this.dis = dis; } } کدهایSetViewHolder : public class SetViewHolder extends RecyclerView.ViewHolder { public TextView txt_h; public Button button2; public Button button3; private Cursor cursor; private DatabaseHelper databaseHelper; public SetViewHolder(final View itemView) { super(itemView); txt_h=(TextView)itemView.findViewById(R.id.txt_word); button2=(Button)itemView.findViewById(R.id.button2); button3= (Button) itemView.findViewById(R.id.button3); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { databaseHelper=new DatabaseHelper(itemView.getContext()); databaseHelper.openDatabase(); databaseHelper.getReadableDatabase(); databaseHelper.QueryData("INSERT INTO fav(dis) VALUES('"+txt_h.getText()+"')"); databaseHelper.close(); // cursor=databaseHelper.QueryData("INSERT INTO fav(dis) VALUES('"+txt_h.getText()+"')"); // cursor.getString(1); } }); button3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent shareIntent = new Intent(Intent.ACTION_SEND); shareIntent.setType("text/plain"); shareIntent.putExtra(Intent.EXTRA_TEXT,txt_h.getText().toString()); shareIntent.putExtra(Intent.EXTRA_SUBJECT, "jj"); v.getContext().startActivity(Intent.createChooser(shareIntent, "Share ...")); } }); } } کدهای Adapter: public class VocabularyAdapter extends RecyclerView.Adapter<SetViewHolder> { private Activity activity; List<Item> items= Collections.emptyList(); public VocabularyAdapter(Activity activity, List<Item> items){ this.activity=activity; this.items=items; } @Override public SetViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view= LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item,parent,false); return new SetViewHolder(view); } @Override public void onBindViewHolder(SetViewHolder holder, final int position) { holder.txt_h.setText(items.get(position).getdis()); } @Override public int getItemCount() { return items.size(); } } کدهای اکتویتی اصلی : public class HadisActivity extends AppCompatActivity { private RecyclerView recyclerView; private DatabaseHelper databaseHelper; private Cursor cursor; private VocabularyAdapter adapter; private ArrayList<Item> arrayList =new ArrayList<Item>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.h_layout); recyclerView=(RecyclerView)findViewById(R.id.recycler_view); loadDatabase(); } public void loadDatabase(){ databaseHelper=new DatabaseHelper(this); try { databaseHelper.checkAndCopyDatabase(); databaseHelper.openDatabase(); }catch (SQLiteException e){ e.printStackTrace(); } try { cursor=databaseHelper.QueryData("select * from tbl"); if (cursor !=null) { if(cursor.moveToFirst()){ do { Item item=new Item(); item.setdis(cursor.getString(1)); arrayList.add(item); }while (cursor.moveToNext()); } } }catch (SQLiteException e){ e.printStackTrace(); } LinearLayoutManager linearLayoutManager=new LinearLayoutManager(this); adapter=new VocabularyAdapter(this,arrayList); recyclerView.setHasFixedSize(true); recyclerView.setLayoutManager(linearLayoutManager); recyclerView.setAdapter(adapter); } } کد نمایش لیست علاقه ها هم کپی اکتیویتی اصلی هست . مشکل در کد INSERT (در SetViewHolder) میباشد که آیتم به جدول علاقه مندی ها اضافه نمیشود دو کد رو تست کردم اما درست نشد: button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { databaseHelper=new DatabaseHelper(itemView.getContext()); databaseHelper.openDatabase(); databaseHelper.getReadableDatabase(); databaseHelper.QueryData("INSERT INTO fav(dis) VALUES('"+txt_h.getText()+"')"); databaseHelper.close(); // cursor=databaseHelper.QueryData("INSERT INTO fav(dis) VALUES('"+txt_h.getText()+"')"); // cursor.getString(1); } });
  5. String SearchText = edsearch.getText().toString(); این کد مهم رو نزده بودم درست شد ،ممنون
  6. بله ناقص بود ،تشکر حالا اگر سرچ با Edittxt باشه و در Listview نمایش نتایج باشه این کد رو میزنم اما نه خطا داره و نه اجرا میشه مشکل چیه؟ ArrayAdapter adapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1,db.getListOfRow("SELECT * FROM tbl WHERE name LIKE'%"+txtsearch+"%'","farsi")); lists.setAdapter(adapter);
  7. سلام آموزش خوبی بود،اما برای سرچ این کد رو میزنم و برنامه stop میشه اسم رو از یه textbox میگیره و نتیجه در یک textview نمایش میده ، دو نوع کد زدم واسش اما هر دو ارور داد txtsv.setText(db.getString("SELECT * FROM database WHERE name LIKE'%"+txts,"name")); db.Querry("SELECT * FROM database WHERE name LIKE'%"+txts);
×
×
  • جدید...