آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

عیب در بالا آمدن لایه بعد از فراخانی یک intent

124867  9 سال پیش  9 سال پیش
0 0

با عرض سلام و خسته نباشید.

من به یک مشکل برخورد کرده ام ، وقتی لایه من load میشه هیچ کدوم از object های منو نشون نمیده انگار این لایه، لایه ای که من ساختم نیست .

من همه آدرس هایی که برای load لایه گذاشتم رو چک کردم هیچ مشکلی نداشت میشه راهنماییم کنید؟

اینم سورس که داخلش intent قرار داره :


public class AdapterDorehForStudent extends ArrayAdapter<StaructDorehForStudent> {
public AdapterDorehForStudent(ArrayList<StaructDorehForStudent> array) {
super(G.context, R.layout.list_item_dorehforstudent, array);
}
private static class ViewHolder {
public TextView txtNameDoreh ;
public ViewGroup lineyerRoot ;
public TextView txtNumberStudent;
// ساخت یک الوار جدید در لیست ویو
public ViewHolder(View view) {
txtNameDoreh=(TextView)view.findViewById(R.id.txtNameDorehForStudent);
txtNumberStudent= (TextView)view.findViewById(R.id.txtNumberDoreh);
lineyerRoot =(ViewGroup)view.findViewById(R.id.layoutRoot);

}
//آپدیت کردن محتوای الوار ها
public void fill(final ArrayAdapter<StaructDorehForStudent> adapter , StaructDorehForStudent item, final int position) {
txtNameDoreh.setText(item.NameDore);
txtNumberStudent.setText(item.NumberStudent);
lineyerRoot.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent ViewStudent =new Intent(G.currentActivityDoreh,MainViewStudent.class);
ViewStudent.putExtra("numberDoreh",position);
G.currentActivityDoreh.startActivity(ViewStudent);
}
});
}

}

// چک کردن برای ساخت یا آپدیت کردن الوار ها و فیکس کردن اطلاعات در الوار ها
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;

StaructDorehForStudent item = getItem(position);
if (convertView == null) {
convertView = G.inflater.inflate(R.layout.list_item_dorehforstudent, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}

holder.fill(this, item, position);
return convertView;
}

//**********************************************************************

//اینم کلاس که قراره باهاش ارتباط برقرار کنه اما هیچ کدوم از لاگ هاش رو نمایش نمیده


public class MainViewStudent extends AppCompatActivity {
private ListView lv;
private ArrayAdapter adapter;
private ArrayList<StaructStudent> Student = new ArrayList<StaructStudent>();
private static Map<String, Object> StudentInfo = new LinkedHashMap<>();
private String TAG= "mostafa";
@Override
public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
super.onCreate(savedInstanceState, persistentState);
setContentView(R.layout.activity_student_view);
G.contextStudent = MainViewStudent.this;
Log.i(TAG,"oncreate Student");
lv = (ListView) findViewById(R.id.listView);
adapter = new AdapterViewStudent(Student);
lv.setAdapter(adapter);
Bundle extend = getIntent().getExtras();
int j = -1;
if (extend != null) {
j = extend.getInt("numberDoreh");
Log.i(TAG,"j : "+j);
}
int number;

if (j == -1) {
number = G.arrayNumberStudentwDoreh.get(j);
Log.i(TAG,"number : "+ number);
StudentInfo = G.arrayParamsStudent.get(j);
Log.i(TAG,"StudentInfo : "+ StudentInfo);

} else {
return;
}

for (int i = 0; i < number; i++) {
String str = StudentInfo.get("Student_name" + i).toString();
String num = StudentInfo.get("grade" + i).toString();
StaructStudent student = new StaructStudent();
student.NameStudent = str;
student.Grade = num;
Student.add(student);

adapter.notifyDataSetChanged();

}
}
}
0 0
به نظر میاد که مشکلی نداره، بقیه ی کدها رو بزارید. (9 سال پیش)
0 0
شما دارید سورس داخل Adapter رو نمایش میدید ! intent چی هست ؟ (9 سال پیش)
0 0
criss: براتون آبیش کردم (9 سال پیش)
0 0
ninja: سورس کلاسی که فراخونی شود رو هم فرستادم کجاش به نظرتون ایراد داره بگید بفرستم (9 سال پیش)
0 0
برنامه کرش نمیکنه ؟ اکتیویتی هاتون رو از ActivityEnhanced میراث بری کردید؟ (9 سال پیش)
0 0
در کلاس MainViewStudent توی یکی از if ها یه return گذاشتید. return رو پاک کنید. اگه درست شد بگید، که بگم مشکل از کجاست و return رو باید کجا بزارید. adapter.notifyDataSetChanged(); رو هم بهتره بعد از حلقه ی for بنویسید. (9 سال پیش)
0 0
morteza : نه کرش نمیکنه کلاسم هم از AppCompatActivity تعریف شده (9 سال پیش)
0 0
ninja: تغیر دادم اما تفاوتی نکرد قبل از این که بخواد وارد این if بشه log های onCreate رو چاپ نمیکنه ممنون از نظرتون (9 سال پیش)
 برای این سوال پاسخی وجود ندارد.

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