اگه دقیقا همین کدها در Eclipse کار میکنند و در AndroidStudio کرش میکنه،و از اونجایی که آرایه ورودی AdapterNote رو در کلاس G تعریف کنید به نظر من احتمالا این کلاس رو در فایل Manifest و تگ Application تعریف نکردید و آرایه تون null میمونه و خطای nullPointerEXCEPTION گرفتید...manifest رو بررسی کنید...
بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ
مشکل در لیست ویو در اندروید استودیو(فوری)
مدیریت گفتگو
پاسخها 8
کد ها به صورت زیر هست
دقیقا همین توی اکلیپس اجرا میشه ولی تو اندروید استودیو نه!
package test_list_view.app.course.uncocoder.com.myapplication;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class ActivityMain extends Activity {
public ArrayAdapter adapter;
@Override
protected void onResume() {
G.currentActivity = this;
super.onResume();
if (adapter != null) {
adapter.notifyDataSetChanged();
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activitymain);
ListView lstContent = (ListView) findViewById(R.id.lstContent);
adapter = new AdapterNote(G.notes);
lstContent.setAdapter(adapter);
for (int i = 0; i < 10; i++) {
StructNote note = new StructNote();
note.title = "Title " + i;
note.description = "Description " + i;
note.done = false;
G.notes.add(note);
}
adapter.notifyDataSetChanged();
}
}
package test_list_view.app.course.uncocoder.com.myapplication;
import java.util.ArrayList;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.TextView;
public class AdapterNote extends ArrayAdapter<StructNote> {
public AdapterNote(ArrayList<StructNote> array) {
super(G.context, R.layout.adapter_notes, array);
}
private static class ViewHolder {
public TextView txtTitle;
public TextView txtDescription;
public CheckBox chkDone;
public ViewHolder(View view) {
txtTitle = (TextView) view.findViewById(R.id.txtTitle);
txtDescription = (TextView) view.findViewById(R.id.txtDescription);
chkDone = (CheckBox) view.findViewById(R.id.chkDone);
}
public void fill(final ArrayAdapter<StructNote> adapter, final StructNote item, final int position) {
txtTitle.setText(item.title);
txtDescription.setText(item.description);
chkDone.setChecked(item.done);
}
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
StructNote item = getItem(position);
if (convertView == null) {
convertView = G.inflater.inflate(R.layout.adapter_notes, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.fill(this, item, position);
return convertView;
}
}
نظرات
اصلاح میکنم از اونجایی که آرایه ورودی AdapterNote رو درکلاس G تعریف کردید(که به اشتباه نوشته بودم ' کنید ')
در منیفست هم کلاس G رو تعریف کردم
همین الان پروژه رو اکسپورت کنین و قرار بدین اینطوری دقیق مشخص نیست کداتون به ظاهر مشکلی ندارن
لطفا اینقدرم هی پاسخ نذارین از کامنتم میتونین برای آپدیت پست استفاده کنین
بخاطر انترنت تکرار شد
چگونه میشه فایل پروژه رو اینجا فرستاد؟
فایل پروژه رو نمیشه اینجا آپلود کرد، فقط سورس کدهاتون رو در تگ source که در قسمت نوشتن تعبیه شده است قرار بدهید که کدها خواناتر و منظم تر باشه !
کد هارو که بالا گذاشتم میشه اینجا شمارهبدم تو تلگرام برای یکی بفرستم البته اگر قانون انجمن اجازه میده
منئورم این بود یه جا آپلود کنید لینکشو بزارید
سلام منم همین مشکل رو دارم و به خط زیر گیر میده
convertView = G.inflater.inflate(R.layout.adapter_list_film, parent, false);
جهت اطلاع من کلاس G رو در منیفست تعریف کردم و هیچ مشکلی در خصوص معرفی کلاس G به
پروژه نیست.
لطفا راهنمایی فرمایید.
نظرات
شما inflater رو در کلاس G تعریف کردین یا نه ؟
بله تعریف کردم
خطای لاگ رو قرار بدین که بهتر بشه بررسی کرد !
سلام..من به این مشکل بر خوردم با این تفاوت که من خطایی نمیگیرم ولی لیست ویو ادپت نمیکنه...یعنی فقط بک گراند صفحه یی که لیست ویو توش قرارداده میان یه صفحه مشکی خالی.. و الان تقریبا یک هفته ست دارم روش کار میکنم و همه ی روش هایی رو که گفته شده رو امتحان کردم ولی باز هم لیست ویو رو خالی نشون میده.. پروژه اندروید مارکت با اندروید استادیو میخام اجرا کنم که به همچین مشکلی بر خوردم..یعنی دیتا های دریافتی از سرور رو ادپت نمیکنه..نمیدونم چرا
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
ویرایش
پیام

نظرات