بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

مشکل در لیست ویو در اندروید استودیو(فوری)

مدیریت گفتگو
GOOD 10 سال پیش
آخرین تغییر: 9 سال پیش

من پروژه لیست ویو استاد رو میخواهم تو اندروید استودیو متریال کنمش با انتخاب اکتیویتی های امادش ولی  کرش میده چرا؟ کد ها رو هم عوض نکردم

نظرات

مسعود فرمانی 10 سال پیش
خطای NullPointerException داری کلاس AdapterNote خط 15 کلاس ActivityMain خط 34
مسعود فرمانی 10 سال پیش
کدهای این خطوط رو بررسی کن ..داری یه متد یا property از یک رفرنس null رو استفاده میکنی...
MeY3am 10 سال پیش
کلاس adapter خالیه، به عبارتی یه چی خالی میفرستی !

پاسخ‌ها 8

GOOD 10 سال پیش

کد ها به صورت زیر هست

 

دقیقا همین توی اکلیپس اجرا میشه ولی تو اندروید استودیو نه!

 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;
}
}

نظرات

مسعود فرمانی 10 سال پیش
اگه دقیقا همین کدها در Eclipse کار میکنند و در AndroidStudio کرش میکنه،و از اونجایی که آرایه ورودی AdapterNote رو در کلاس G تعریف کنید به نظر من احتمالا این کلاس رو در فایل Manifest و تگ Application تعریف نکردید و آرایه تون null میمونه و خطای nullPointerEXCEPTION گرفتید...manifest رو بررسی کنید...
مسعود فرمانی 10 سال پیش
اصلاح میکنم از اونجایی که آرایه ورودی AdapterNote رو درکلاس G تعریف کردید(که به اشتباه نوشته بودم ' کنید ')
GOOD 10 سال پیش
در منیفست هم کلاس G رو تعریف کردم
amirhossein1376 10 سال پیش
همین الان پروژه رو اکسپورت کنین و قرار بدین اینطوری دقیق مشخص نیست کداتون به ظاهر مشکلی ندارن
amirhossein1376 10 سال پیش
لطفا اینقدرم هی پاسخ نذارین از کامنتم میتونین برای آپدیت پست استفاده کنین
GOOD 10 سال پیش
بخاطر انترنت تکرار شد
GOOD 10 سال پیش
چگونه میشه فایل پروژه رو اینجا فرستاد؟
MeY3am 10 سال پیش
فایل پروژه رو نمیشه اینجا آپلود کرد، فقط سورس کدهاتون رو در تگ source که در قسمت نوشتن تعبیه شده است قرار بدهید که کدها خواناتر و منظم تر باشه !
GOOD 10 سال پیش
کد هارو که بالا گذاشتم میشه اینجا شمارهبدم تو تلگرام برای یکی بفرستم البته اگر قانون انجمن اجازه میده
amirhossein1376 10 سال پیش
منئورم این بود یه جا آپلود کنید لینکشو بزارید
GOOD 10 سال پیش

نظرات

GOOD 10 سال پیش

نظرات

GOOD 10 سال پیش

نظرات

GOOD 10 سال پیش

نظرات

GOOD 10 سال پیش

نظرات

GOOD 10 سال پیش

نظرات

ahm_android 10 سال پیش

سلام منم همین مشکل رو دارم و به خط زیر گیر میده

 convertView = G.inflater.inflate(R.layout.adapter_list_film, parent, false);

جهت اطلاع من کلاس G رو در منیفست تعریف کردم و هیچ مشکلی در خصوص معرفی کلاس G به

 

پروژه نیست.

 

 

 

لطفا راهنمایی فرمایید.

 

نظرات

MeY3am 10 سال پیش
شما inflater رو در کلاس G تعریف کردین یا نه ؟
MeY3am 10 سال پیش
خطای لاگ رو قرار بدین که بهتر بشه بررسی کرد !
h.k.m 9 سال پیش
سلام..من به این مشکل بر خوردم با این تفاوت که من خطایی نمیگیرم ولی لیست ویو ادپت نمیکنه...یعنی فقط بک گراند صفحه یی که لیست ویو توش قرارداده میان یه صفحه مشکی خالی.. و الان تقریبا یک هفته ست دارم روش کار میکنم و همه ی روش هایی رو که گفته شده رو امتحان کردم ولی باز هم لیست ویو رو خالی نشون میده.. پروژه اندروید مارکت با اندروید استادیو میخام اجرا کنم که به همچین مشکلی بر خوردم..یعنی دیتا های دریافتی از سرور رو ادپت نمیکنه..نمیدونم چرا

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .