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

مشکل در لیست ویو و آداپتر


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

من می خواستم توی آداپتر متصل به لیست ویو مثلا یک قسمت مثل ویرایش بزارم که کاربر با زدن روی اون قسمت، آیتم مورد نظرش رو با رفتن به یک اکتیویتی دیگه ویرایش کنه.اما نمی دونم با چه دستوری ابتدا مشخصات آیتمی که روش کلیک شده را بگیرم.لطفا کمک کنید.

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

به صورت زیر عمل کنید :

[shcode=java]

ListView lv = getListView();

       // listening to single list item on click

       lv.setOnItemClickListener(new OnItemClickListener() {

         public void onItemClick(AdapterView<?> parent, View view,

             int position, long id) {

            

             // selected item

            

             // Launching new Activity on selecting single List Item

             Intent i = new Intent(getApplicationContext(), SingleListItem.class);

             // sending data to new activity

             i.putExtra("product", product);

             startActivity(i);

          

         }

       });

[/shcode]

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

خیلی ممنون از جوابتون ولی منظورم این بود با کلیک بر روی یک قسمت از آیتم مثلا یک امیج ویو کار خاصی مثل ویرایش متن آیتم  مورد نظر در لیست ویو را انجام دهد.در حالی که در کد شما با کلیک بر روی آیتم این کار انجام می شود.شاید من اشتباه منظورم را گفتم.

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

آها بله بنده بد متوجه شدم منظورتون رو به صورت مثالی براتون قرار می دهم :

در آداپتر مورنظر ابتدا button مورد نظرتون رو معرفی کنید و  بعد مشخص کنید که با کلیک بر روی button شماره position آیتم رو میگیرید همچنین مقداری رو که به آداپتر به عنوان مقدار آی دی دادید( من اینجا getCId قرار دادم )  رو میگیرید بعد اکتیویتی جدید اجرا بشه نمونه کد در زیر :

package aln.dl.imusic;import java.util.ArrayList;import java.util.List;import android.content.Context;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.view.View.OnClickListener;import android.widget.BaseAdapter;import android.widget.Button;public class Listitem extends BaseAdapter {private LayoutInflater myInflater;private ArrayList item;Context context;   Activity act;public Listitem(Context context, Activity act) {	myInflater = LayoutInflater.from(context);	this.context = context;	this.act = act;}public void setData(ArrayList item) {	this.item = item;}@Overridepublic int getCount() {	return item.size();}@Overridepublic Object getItem(int position) {	return null;}@Overridepublic long getItemId(int position) {	return position;}@Overridepublic boolean isEnabled(int position) {    return false;}@Overridepublic View getView(final int position, View convertView, ViewGroup parent) {	ViewHolder holder;        	if (convertView == null) {       	convertView = myInflater.inflate(R.layout.row_item, null);       	holder 		= new ViewHolder();		holder.repo       = (Button)     convertView.findViewById(R.id.btn3m);		convertView.setTag(holder);       } else {       	holder = (ViewHolder) convertView.getTag();       }	holder.repo.setTypeface((Typeface) font);	holder.repo.setOnClickListener(new OnClickListener() {        public void onClick(View v) { Intent i = new Intent(getApplicationContext(), SingleListItem.class);              // sending data to new activity              i.putExtra("product", item.get(position).getCId());              startActivity(i);	        	        }    });	return convertView;}static class ViewHolder {	Button    repo;}}
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

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

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

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

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

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

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

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

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