Adapter محتویات listView در کلاس برنامه نویسی اندروید
ارسالها: 202
موضوعها: 70
تاریخ عضویت: شهریور ۱۳۹۳
اعتبار:
4
سپاس ها 89
سپاس شده 143 بار در 81 ارسال
حالت من:
۱۳۹۴/۰۵/۰۴, ۰۳:۲۴ ب.ظ
(آخرین تغییر در ارسال: ۱۳۹۴/۰۵/۰۶, ۰۱:۳۹ ب.ظ توسط admin.)
سلام
میخوام کد زیر رو توی کلاس بنویسم اما نمیدونم چیو باید تغییر بدم...
راهنمایی لطفاًااااااا
کد پیاچپی: // Adding items to listview adapter = new ArrayAdapter<String>(this, R.layout.list_search_item, R.id.subject_name, products); lv.setAdapter(adapter);
چجوری توی کلاس بنویسمش که گیر نده
سپاس شده توسط | |
|
Adapter محتویات listView در کلاس برنامه نویسی اندروید
ارسالها: 2,933
موضوعها: 191
تاریخ عضویت: تير ۱۳۹۱
اعتبار:
126
سپاس ها 1688
سپاس شده 3507 بار در 2023 ارسال
حالت من:
سلام.
کلمه this به Context اشاره دارد. بنابراین در یک کلاس (Class) دیگر، شناخته شده نیست. پس باید Context مربوط به Activity شامل ListView را به آن کلاس ارسال کرده و به جای کلمه this بنویسیم :
کلید شماره 342
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
Adapter محتویات listView در کلاس برنامه نویسی اندروید
ارسالها: 2
موضوعها: 0
تاریخ عضویت: آذر ۱۳۹۴
اعتبار:
0
سپاس ها 0
سپاس شده 0 بار در 0 ارسال
حالت من: هیچ کدام
۱۳۹۴/۰۹/۰۵, ۱۲:۳۴ ق.ظ
(۱۳۹۴/۰۵/۰۶, ۰۱:۴۱ ب.ظ)'admin' نوشته: سلام.
کلمه this به Context اشاره دارد. بنابراین در یک کلاس (Class) دیگر، شناخته شده نیست. پس باید Context مربوط به Activity شامل ListView را به آن کلاس ارسال کرده و به جای کلمه this بنویسیم :
کلید شماره 342
سلام من یه تازه واردم امیدوارم که بتونیم اینجا مشکلمون رو در میون بذاریم و حلش کنیم
من یه listview نوشتم ولی اصلا اجرا نمی شه وقتی تو بلو استک اجراش می کنم یه صفحه سیاه مییاد و میره اصلا لیست رو نشون نمی ده
خیلی اسیر شدم اصلا نمی شه حلش کرد. لطفا کمک کنید.
ListView2Activity.java:کد پیاچپی: package ir.androidcode.ListView2;
import android.app.ListActivity; import android.os.Bundle; import android.widget.ArrayAdapter;
public class ListView2Activity extends ListActivity {
/** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);
ArrayAdapter<String> str = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.daneshgah)); setListAdapter(str); } }
main.xml:کد پیاچپی: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" >
<ListView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView>
</LinearLayout>
ListView2 Manifest:کد پیاچپی: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="ir.androidcode.ListView2" android:versionCode="1" android:versionName="1.0" >
<uses-sdk android:minSdkVersion="15" />
<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".ListView2Activity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
</manifest>
سپاس شده توسط | |
|
Adapter محتویات listView در کلاس برنامه نویسی اندروید
ارسالها: 4
موضوعها: 0
تاریخ عضویت: آبان ۱۳۹۴
اعتبار:
0
سپاس ها 0
سپاس شده 2 بار در 1 ارسال
حالت من: هیچ کدام
۱۳۹۴/۰۹/۰۸, ۰۱:۴۶ ب.ظ
(آخرین تغییر در ارسال: ۱۳۹۴/۰۹/۰۸, ۰۲:۰۴ ب.ظ توسط admin.)
با سلام دوستان من یه مشکلی دارم
طرز استفاده دقیق از arrayadapter رو نمیدونم
و از طرفی نمیدونم که ایا مقادیری که با جیسون میگیرم رو درست مقدار رهی میکنم یا نه لطفا کمک کنید...
کد: public class Main extends Activity {
private int term=1;
private ListView listview;
private ArrayList<String> list;
private String[] json1,json2,json3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
new getdata().execute();
listview=(ListView)findViewById(R.id.listview);
}
public class getdata extends AsyncTask{
ProgressDialog pd=new ProgressDialog(Main.this);
@Override
protected void onPreExecute() {
pd.setMessage("Loading...");
pd.show();
super.onPreExecute();
}
@Override
protected Object doInBackground(Object... args) {
try {
String data= URLEncoder.encode("term","UTF8")+"="+URLEncoder.encode(term+"","UTF8");
URL link=new URL("http://hoseein.vvs.ir/html_public/wordpress/wp-app/term.php");
URLConnection connect=link.openConnection();
///////////////send data////////////////
connect.setDoOutput(true);
OutputStreamWriter wr=new OutputStreamWriter(connect.getOutputStream());
wr.write(data);
wr.flush();
BufferedReader reader=new BufferedReader(new InputStreamReader(connect.getInputStream()));
StringBuilder sb=new StringBuilder();
String line=null;
while ((line=reader.readLine()) !=null){
sb.append(line);
}
list=new ArrayList<String>();
JSONArray ja=new JSONArray(sb.toString());
for(int i=0;i<ja.length();i++){
JSONObject jo=ja.getJSONObject(i);
json1[i]=(jo.getString("post_title"));
json2[i]=(jo.getString("post_content"));
json3[i]=(jo.getString("comment_count"));
/*
list.add(jo.getString("post_title"));
list.add(jo.getString("post_content"));
list.add(jo.getString("comment_count"));
*/
}
}catch (Exception e){
}
return "";
}
@Override
protected void onPostExecute(Object result) {
if (result == "") {
//ArrayAdapter<String> adapter=new ArrayAdapter<String>(Main.this,android.R.layout.simple_list_item_1,list);
listview.setAdapter(new AI(Main.this, R.layout.main_row, android.R.layout.simple_list_item_1, json1));
pd.dismiss();
}
super.onPostExecute(result);
}
}
class AI extends ArrayAdapter<String>{
public AI(Context context, int resource, int textViewResourceId,
String[] objects) {
super(context, resource, textViewResourceId, objects);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater in=getLayoutInflater();
View row=in.inflate(R.layout.main_row, parent ,false);
TextView title=(TextView) row.findViewById(R.id.main_row_title);
title.setText(json1[position]);
TextView txt=(TextView) row.findViewById(R.id.main_row_content);
txt.setText(json2[position]);
TextView nazar=(TextView) row.findViewById(R.id.main_row_comment);
nazar.setText(json3[position]);
return row;
}
}
}
سپاس شده توسط | |
|
Adapter محتویات listView در کلاس برنامه نویسی اندروید
ارسالها: 2
موضوعها: 0
تاریخ عضویت: آذر ۱۳۹۴
اعتبار:
0
سپاس ها 0
سپاس شده 0 بار در 0 ارسال
حالت من: هیچ کدام
(۱۳۹۴/۰۹/۰۸, ۰۱:۴۶ ب.ظ)Michael.0858 نوشته: با سلام دوستان من یه مشکلی دارم
طرز استفاده دقیق از arrayadapter رو نمیدونم
و از طرفی نمیدونم که ایا مقادیری که با جیسون میگیرم رو درست مقدار رهی میکنم یا نه لطفا کمک کنید...
کد: public class Main extends Activity {
private int term=1;
private ListView listview;
private ArrayList<String> list;
private String[] json1,json2,json3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
new getdata().execute();
listview=(ListView)findViewById(R.id.listview);
}
public class getdata extends AsyncTask{
ProgressDialog pd=new ProgressDialog(Main.this);
@Override
protected void onPreExecute() {
pd.setMessage("Loading...");
pd.show();
super.onPreExecute();
}
@Override
protected Object doInBackground(Object... args) {
try {
String data= URLEncoder.encode("term","UTF8")+"="+URLEncoder.encode(term+"","UTF8");
URL link=new URL("http://hoseein.vvs.ir/html_public/wordpress/wp-app/term.php");
URLConnection connect=link.openConnection();
///////////////send data////////////////
connect.setDoOutput(true);
OutputStreamWriter wr=new OutputStreamWriter(connect.getOutputStream());
wr.write(data);
wr.flush();
BufferedReader reader=new BufferedReader(new InputStreamReader(connect.getInputStream()));
StringBuilder sb=new StringBuilder();
String line=null;
while ((line=reader.readLine()) !=null){
sb.append(line);
}
list=new ArrayList<String>();
JSONArray ja=new JSONArray(sb.toString());
for(int i=0;i<ja.length();i++){
JSONObject jo=ja.getJSONObject(i);
json1[i]=(jo.getString("post_title"));
json2[i]=(jo.getString("post_content"));
json3[i]=(jo.getString("comment_count"));
/*
list.add(jo.getString("post_title"));
list.add(jo.getString("post_content"));
list.add(jo.getString("comment_count"));
*/
}
}catch (Exception e){
}
return "";
}
@Override
protected void onPostExecute(Object result) {
if (result == "") {
//ArrayAdapter<String> adapter=new ArrayAdapter<String>(Main.this,android.R.layout.simple_list_item_1,list);
listview.setAdapter(new AI(Main.this, R.layout.main_row, android.R.layout.simple_list_item_1, json1));
pd.dismiss();
}
super.onPostExecute(result);
}
}
class AI extends ArrayAdapter<String>{
public AI(Context context, int resource, int textViewResourceId,
String[] objects) {
super(context, resource, textViewResourceId, objects);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater in=getLayoutInflater();
View row=in.inflate(R.layout.main_row, parent ,false);
TextView title=(TextView) row.findViewById(R.id.main_row_title);
title.setText(json1[position]);
TextView txt=(TextView) row.findViewById(R.id.main_row_content);
txt.setText(json2[position]);
TextView nazar=(TextView) row.findViewById(R.id.main_row_comment);
nazar.setText(json3[position]);
return row;
}
}
}
این که برا من کار کرد
ListView3.java
کد: package com.kelidestan.ListView3;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class ListView3Activity extends Activity {
ListView lv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lv = (ListView) findViewById(R.id.listView1);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.names));
lv.setAdapter(adapter);
}
}
values/cars.xml
کد: <?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="names">
<item name="name_1">پراید</item>
<item name="name_2">پژو 405</item>
<item name="name_3">پژو 206</item>
<item name="name_4">پژو پارس</item>
<item name="name_5">سمند</item>
</string-array>
</resources>
سپاس شده توسط | |
|
Adapter محتویات listView در کلاس برنامه نویسی اندروید
ارسالها: 4
موضوعها: 0
تاریخ عضویت: آبان ۱۳۹۴
اعتبار:
0
سپاس ها 0
سپاس شده 2 بار در 1 ارسال
حالت من: هیچ کدام
(۱۳۹۴/۰۹/۰۸, ۰۴:۰۸ ب.ظ)hoseinrahimi نوشته: (۱۳۹۴/۰۹/۰۸, ۰۱:۴۶ ب.ظ)Michael.0858 نوشته: با سلام دوستان من یه مشکلی دارم
طرز استفاده دقیق از arrayadapter رو نمیدونم
و از طرفی نمیدونم که ایا مقادیری که با جیسون میگیرم رو درست مقدار رهی میکنم یا نه لطفا کمک کنید...
کد: public class Main extends Activity {
private int term=1;
private ListView listview;
private ArrayList<String> list;
private String[] json1,json2,json3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
new getdata().execute();
listview=(ListView)findViewById(R.id.listview);
}
public class getdata extends AsyncTask{
ProgressDialog pd=new ProgressDialog(Main.this);
@Override
protected void onPreExecute() {
pd.setMessage("Loading...");
pd.show();
super.onPreExecute();
}
@Override
protected Object doInBackground(Object... args) {
try {
String data= URLEncoder.encode("term","UTF8")+"="+URLEncoder.encode(term+"","UTF8");
URL link=new URL("http://hoseein.vvs.ir/html_public/wordpress/wp-app/term.php");
URLConnection connect=link.openConnection();
///////////////send data////////////////
connect.setDoOutput(true);
OutputStreamWriter wr=new OutputStreamWriter(connect.getOutputStream());
wr.write(data);
wr.flush();
BufferedReader reader=new BufferedReader(new InputStreamReader(connect.getInputStream()));
StringBuilder sb=new StringBuilder();
String line=null;
while ((line=reader.readLine()) !=null){
sb.append(line);
}
list=new ArrayList<String>();
JSONArray ja=new JSONArray(sb.toString());
for(int i=0;i<ja.length();i++){
JSONObject jo=ja.getJSONObject(i);
json1[i]=(jo.getString("post_title"));
json2[i]=(jo.getString("post_content"));
json3[i]=(jo.getString("comment_count"));
/*
list.add(jo.getString("post_title"));
list.add(jo.getString("post_content"));
list.add(jo.getString("comment_count"));
*/
}
}catch (Exception e){
}
return "";
}
@Override
protected void onPostExecute(Object result) {
if (result == "") {
//ArrayAdapter<String> adapter=new ArrayAdapter<String>(Main.this,android.R.layout.simple_list_item_1,list);
listview.setAdapter(new AI(Main.this, R.layout.main_row, android.R.layout.simple_list_item_1, json1));
pd.dismiss();
}
super.onPostExecute(result);
}
}
class AI extends ArrayAdapter<String>{
public AI(Context context, int resource, int textViewResourceId,
String[] objects) {
super(context, resource, textViewResourceId, objects);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater in=getLayoutInflater();
View row=in.inflate(R.layout.main_row, parent ,false);
TextView title=(TextView) row.findViewById(R.id.main_row_title);
title.setText(json1[position]);
TextView txt=(TextView) row.findViewById(R.id.main_row_content);
txt.setText(json2[position]);
TextView nazar=(TextView) row.findViewById(R.id.main_row_comment);
nazar.setText(json3[position]);
return row;
}
}
}
این که برا من کار کرد
ListView3.java
کد: package com.kelidestan.ListView3;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class ListView3Activity extends Activity {
ListView lv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lv = (ListView) findViewById(R.id.listView1);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.names));
lv.setAdapter(adapter);
}
}
values/cars.xml
کد: <?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="names">
<item name="name_1">پراید</item>
<item name="name_2">پژو 405</item>
<item name="name_3">پژو 206</item>
<item name="name_4">پژو پارس</item>
<item name="name_5">سمند</item>
</string-array>
</resources>
سوال من کلا یه چیز دیگست...
اطلاعات رو از سرور گرفتم اما نمیتونم به وسیله یک اداپتر توی یه لیست ویو نمایشش بدم
|