ورود

View Full Version : لیست علاقمندی



zarabela
دوشنبه 14 مهر 1393, 21:24 عصر
سلام دوستان
من با کد زیر یه لیست علاقمندی بوجود اوردم حالا میخوام یه سری شرط بزارم که با کلیک روی هر آیتم متن اون آیتم رو بگیره و با توجه به اون متن یه صفحه مشخص رو باز کنه ، ولی کدش رو نمیدونم چطوره:متفکر: اگه امکانش هست راهنماییم کنید
اینم کد :
import java.util.ArrayList;
import java.util.List;
import android.app.ListActivity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class Favorites extends ListActivity {
public int subject_total_number;
public Globals global=new Globals();
public List<String> Favorites_numbers;
public List<String> Favorites_strings;
public String each_subjects;

private ListView lv;
ArrayAdapter<String> adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.favorites);

Favorites_strings=new ArrayList<String>();
Favorites_numbers=new ArrayList<String>();

SharedPreferences shared=getSharedPreferences("Prefs", MODE_PRIVATE);

subject_total_number=global.Subject_total_number;

for (int x = 1; x < subject_total_number+1; x++) {
String each_subject="subject_"+String.valueOf(x);
Boolean b=shared.getBoolean(each_subject, false);

if (b) {
String this_subject="subject_"+String.valueOf(x);
int resID=getResources().getIdentifier(this_subject, "string",
getPackageName());
Favorites_strings.add(getResources().getString(res ID));
String x_string=String.valueOf(x);
Favorites_numbers.add(x_string);
}
}

lv=(ListView)findViewById(android.R.id.list);

adapter=new ArrayAdapter<String>(this, R.layout.fav_list_item,
R.id.fav_txt_list, Favorites_strings);

lv.setAdapter(adapter);


}

}

zarabela
دوشنبه 14 مهر 1393, 22:57 عصر
دوستان ممنون از جواباتون ولی متاسفانه متوجه نشدم:متعجب::چشمک:

zarabela
سه شنبه 15 مهر 1393, 18:21 عصر
دوستان اگه میشه راهنمایی کنید...به نظرم چیز سختی نیست!!کارم بد گیره اینه:افسرده:

SASAN_AH
سه شنبه 15 مهر 1393, 18:28 عصر
سلام ازين كد استفاده كنيد


lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, final View view,
int position, long id) {
String favorite_number = Favorites_numbers.get(position);
Intent i = new Intent(getApplicationContext(),
Show.class);
i.putExtra("subject_number", favorite_number);
startActivity(i);
}

});
}

zarabela
سه شنبه 15 مهر 1393, 19:12 عصر
سلام ازين كد استفاده كنيد


lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, final View view,
int position, long id) {
String favorite_number = Favorites_numbers.get(position);
Intent i = new Intent(getApplicationContext(),
Show.class);
i.putExtra("subject_number", favorite_number);
startActivity(i);
}

});
}



این کار نکرد!
میخوام بررسی کنه ببینه متن آیتمی که روش کلیک شده رو بگیره،بعد با چندتا شرط با توجه به متن اون آیتم به کلاس مورد نظر بره(اسم کلاس و متن آیتم یکی نیست)

SASAN_AH
سه شنبه 15 مهر 1393, 19:27 عصر
ساخت علاقه مندي ها بدون ديتابيس
از طريق string بايد ساخت

نميدونم شما چطور عمل كردين !!

zarabela
سه شنبه 15 مهر 1393, 19:36 عصر
تقریبا طبق این آموزش (http://www.kelidestan.com/keys/keys.php?key=2259) ولی برای صفحات مختلف از SharedPreferences استفاده نکردم!:ناراحت:

zarabela
سه شنبه 15 مهر 1393, 19:49 عصر
فهمیدم چطوره .... ممنون از وقتی که گذاشتید:لبخند: