رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

اضافه کردن عکس به لیست ویو دیتابیس


پست های پیشنهاد شده

با سلام دوستان من برای هر ایتم لیست ویو میخوام یه عکس اضافه کنم متن هر ایتم رو با استفاده از دیتا بیس میگیرم الان بنظرتون با چه روشی عکسها رو میشه اضافه کرد

(لیست ویو رو هم به صورت ساده نوشتم)

class AA extends ArrayAdapter{
public AA(){
		super(Seasone_list.this, R.layout.row_seasone,Name);
	}
	@Override
			public View getView(final int position, View convertView, ViewGroup parent) {
			LayoutInflater in=getLayoutInflater();
			View row=in.inflate(R.layout.row_seasone, parent,false);
			TextView name=(TextView)row.findViewById(R.id.row_seasone_name);
			TextView tedad=(TextView)row.findViewById(R.id.row_seasone_tedad);

			name.setText(Name[position]);
			name.setTypeface(MainActivity.font);
			tedad.setText(Tedad[position ]);
				return(row);
			}}

لینک ارسال
به اشتراک گذاری در سایت های دیگر

با سلام

تو این فایل R.layout.row_seasone که یک رابط کاربری هست یک ImageView قرار بدید و دو کدهاتون اون رو اینطوری بخونید :

[shcode=java]

                 ImageView image=(ImageView)row.findViewById(R.id.myImage);

[/shcode]

حالا عکستون رو بهش بدید.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

با سلام

تو این فایل R.layout.row_seasone که یک رابط کاربری هست یک ImageView قرار بدید و دو کدهاتون اون رو اینطوری بخونید :

[shcode=java]

                 ImageView image=(ImageView)row.findViewById(R.id.myImage);

[/shcode]

حالا عکستون رو بهش بدید.

lممنون ازتون ولی بنظرتون با این یک خط میشه برای هر ایتم لیست ویو که چندتا عکس تو دیتابیس تعریف کردم و یا از drawable که عکسها داخلشه بشه فراخونی کرد.در این حد خط خودم بلدم مهندسسسسسسسسس

لینک ارسال
به اشتراک گذاری در سایت های دیگر

با سلام

تو این فایل R.layout.row_seasone که یک رابط کاربری هست یک ImageView قرار بدید و دو کدهاتون اون رو اینطوری بخونید :

[shcode=java]

                 ImageView image=(ImageView)row.findViewById(R.id.myImage);

[/shcode]

حالا عکستون رو بهش بدید.

lممنون ازتون ولی بنظرتون با این یک خط میشه برای هر ایتم لیست ویو که چندتا عکس تو دیتابیس تعریف کردم و یا از drawable که عکسها داخلشه بشه فراخونی کرد.در این حد خط خودم بلدم مهندسسسسسسسسس

بله. اگر تو پوشه drawable  عکسارو داشته باشید با یک خط کد میشه اینو حل کرد. ولی گویا شما مبتدی هستید. تو انجمن بگردید کدهای زیادی میبینید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بوسیله کد پایینی میتونی از دیتابیس نام عکس رو بگیری و در پوشه drawble پیدا و ذخیرش کنی

[shcode=java]

[/shcode][align=left]ImageView iv = (ImageView) view.findViewById(R.id.imageView1);

int imageResource = context.getResources().getIdentifier(

tour.getImage(), "drawable", context.getPackageName());

if (imageResource != 0) {

iv.setImageResource(imageResource);

[/align]

[shcode=java]

[/shcode]

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بوسیله کد پایینی میتونی از دیتابیس نام عکس رو بگیری و در پوشه drawble پیدا و ذخیرش کنی

[shcode=java]

[/shcode]

[align=left]ImageView iv = (ImageView) view.findViewById(R.id.imageView1);

int imageResource = context.getResources().getIdentifier(

tour.getImage(), "drawable", context.getPackageName());

if (imageResource != 0) {

iv.setImageResource(imageResource);

[/align]

[shcode=java]

[/shcode]

ممنون میشم بگسن واژه tourچیه بهم ارورر گرفته

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بوسیله کد پایینی میتونی از دیتابیس نام عکس رو بگیری و در پوشه drawble پیدا و ذخیرش کنی

[align=left]List tours;

Tour tour = tours.get(position);

[/align]

[shcode=java]

[/shcode]

[align=left]ImageView iv = (ImageView) view.findViewById(R.id.imageView1);

int imageResource = context.getResources().getIdentifier(

tour.getImage(), "drawable", context.getPackageName());

if (imageResource != 0) {

iv.setImageResource(imageResource);

[/align]

[shcode=java]

[/shcode]

 tour شی از کلاس Tour(نام کلاس دلخواه انتخاب کردم) می باشد که  در آن مقادیر را از دیتابیس میگیره و در لیست ویو قرار میده

[align=left]public class Tour {

private Long id;

private String title;

private String description;

private double price;

private String image;

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public String getTitle() {

return title;

}

public void setTitle(String title) {

this.title = title;

}

public String getDescription() {

return description;

}

public void setDescription(String description) {

this.description = description;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

بوسیلیه این دو خط کد نام عکس را دریافت و بوسیله کد اولی در لیست ویو قرار میده

}

public String getImage() {

return image;

}

public void setImage(String image) {

this.image = image;

خودم از این روش استفاده میکنم شاید روش آسانتری هم داشته باشد

[/align]

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دیتا بیس و MAIN اصلی من به شکل پایینه ممنون میشم نگاهی بندازین

extends ListActivity{
private database db;
private String[] Name;
private String[] Tedad;


@Override
protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	setContentView(R.layout.list_season);
	db=new database(this);
	refresh();
	setListAdapter(new AA());

}
@Override
public void onBackPressed() {
	super.onBackPressed();
	finish();
	overridePendingTransition(R.anim.in, R.anim.out);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
Intent intent=new Intent(Seasone_list.this, List_story.class);
intent.putExtra("sea", Name[position]);
startActivity(intent);
}
class AA extends ArrayAdapter{
public AA(){
		super(Seasone_list.this, R.layout.row_seasone,Name);
	}
	@Override
			public View getView(final int position, View convertView, ViewGroup parent) {
			LayoutInflater in=getLayoutInflater();
			View row=in.inflate(R.layout.row_seasone, parent,false);
			TextView name=(TextView)row.findViewById(R.id.row_seasone_name);
			TextView tedad=(TextView)row.findViewById(R.id.row_seasone_tedad);

			name.setText(Name[position]);
			name.setTypeface(MainActivity.font);
			tedad.setText(Tedad[position ]);
				return(row);
			}}
	public void refresh() {
		db.open();
		int s=db.Couant("content","Seasone");
		Name=new String[s];
		Tedad=new String[s];
		Fav=new String[s];

		for(int i=0;i				Name[i]=db.disply_seasone("content", i,4);
			Tedad[i]=db.story_count("content", Name[i].toString())+"";


		}


		db.close();

	}
}





DATABASE

public class database extends SQLiteOpenHelper{
private final Context mycontext;
public final String path="data/data/com.example.app.mesal/databases/";
public final String name="database";
public SQLiteDatabase mydb;
public database(Context context) {
	super(context, "database", null, 1);
	// TODO Auto-generated constructor stub
	mycontext=context;
}

@Override
public void onCreate(SQLiteDatabase arg0) {
	// TODO Auto-generated method stub

}

@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
	// TODO Auto-generated method stub

}
public void open(){
	mydb=SQLiteDatabase.openDatabase(path+name, null, SQLiteDatabase.OPEN_READWRITE);
}
public void close(){
	mydb.close();
}
public void useable(){
	boolean checkdb=checkdb();
	if(checkdb){

	}else{
		this.getReadableDatabase();
		try{
			copydatabase();

		}catch(IOException e){

		}
	}
}
public boolean checkdb() {
	SQLiteDatabase db=null;
	try{
	db=SQLiteDatabase.openDatabase(path+name, null, SQLiteDatabase.OPEN_READONLY);
	}catch(SQLException e)
	{

	}
	return db !=null ? true:false;
}

public void copydatabase() throws IOException{


	OutputStream myOutput = new FileOutputStream(path+name);
	byte[] buffer = new byte[1024];
	int length;
	InputStream myInput = mycontext.getAssets().open("database");
	while ((length = myInput.read(buffer)) > 0) {
	myOutput.write(buffer,0,length);	
	}
	myInput.close();
	myOutput.flush();
	myOutput.close();
}
public String Display(int row,int field,String table){
Cursor cu=mydb.rawQuery("select * from "+table, null);
cu.moveToPosition(row);
String s=cu.getString(field);

return s;

}
public Integer Couant(String table,String field){
Cursor cu=mydb.rawQuery("select * from "+table+" group by "+field, null);
int s=cu.getCount();

return s;

}
public String disply_seasone(String table,int row,int field){
Cursor cu=mydb.rawQuery("select * from "+table+" group by Seasone", null);
cu.moveToPosition(row);
String s=cu.getString(field);

return s;

}

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...