کلیدستان

نسخه‌ی کامل: ساخت لیست علاقه مندی ها برای برنامه اندروید
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
دوستان کمک کنن لطفا....

درست طبق آموزشی که در سایت کلیدستان بود همه ی کد ها رو نوشتم (کپی کردم)
اما برنامه یا خود به خود بسته میشه یا توی قسمت gen ارور میده البته منظورم فایل r.java نیست
لطفا راهنماییم کنین .
کجای کدم اشتباهه
تو قسمت منیفست هم معرفیشون کردم


فک کنم هنوز خیلی مونده تا بیام سطح متوسط
سلام.
توصیه می کنم خطایابی (debug) کنید :

http://www.kelidestan.com/keys/keys.php?key=813

بهترین زمانه که با خطایابی (debug) بر روی گوشی واقعی آشنا شوید.

با سلام و درود فراوان

آقا ممنون درست شد.

بعد تا اونجایی که من متوجه شدم در ساخت لیست علاقه مندی متن رو تو فایل استرینج معرفی میکنیم بعد توی قسمت شو سابجت متناظر با گذینه ی انتخاب شده در لیست ویو متن را نشان می ده.

حالا سوال من اینه که چطوری میتونم اضافه شدن به لیست علاقه مندی وحذف آن را  در یک فایل لایوت دیگر داشته باشم
تا بتونم در داخل لایوت از وب ویو و ایمیج و باتون نیز استفده کنم؟
نگاهی به Activity با نام Show_Subjects بیندازید که برای نمایش مبحث های آموزشی به کار می رود. ما در اون Activity ، کدهای زیر را برای نمایش محتوای مبحث آموزشی انتخاب شده به کار بردیم :

کد پی‌اچ‌پی:
TextView tv1 = (TextViewfindViewById(R.id.textView1);
String stringName_1 "subject_" String.valueOf(Subject_number);;
int resID_1 getResources().getIdentifier(stringName_1"string"getPackageName());
tv1.setText(resID_1);
                
TextView tv2 = (TextViewfindViewById(R.id.textView2);
String stringName_2 "subject_text_" String.valueOf(Subject_number);;
int resID_2 getResources().getIdentifier(stringName_2"string"getPackageName());
tv2.setText(resID_2); 

که فقط نمایش متن در دو TextView می باشد. سایر کدها، مربوط به همان لیست علاقه مندی است (نمایش اینکه اصلا این مبحث در لیست علاقه مندی وجود دارد یا خیر و همچنین امکان افزودن و یا حذف کردن آن از لیست علاقه مندی). بنابراین اگر نوع نمایش مبحث ها را می خواهید تغییر بدهید، باید دو TextView را از فایل xml حذف کرده و سپس کدهای java در Activity (همین کدهایی که ذکر کردیم) را نیز حذف کنید و آنگاه کدهای مربوط به نوع نمایش مورد نظر خود را جایگزین کنید (مثلا عنصر WebView را جایگزین کرده و سپس یک فایل html را در آن نمایش می دهید).

ممنون از راهنماییتون .
الان من اکتیویتی اصلی رو به صورت اسپلش اسفاده کردم و یک اکتیویتی و فایل جاوا ایجاد کردم و کد های مین اکتیویتی رو توش کپی کردم
چرا فورس کلوز می ده نمی دونم


لطفا مثل همیشه راهنماییم کنین با تشکر
تا زمانی که خطایابی (debug) نکنید، نمیشه تشخیص داد که مشکل از چیه.
در واقع هزاران دلیل میتونه داشته باشه (یعنی هزار حالت داریم که ایجاد خطا میکنه و نمیشه گفت که کدوم یکی پیش اومده)، حالا یا کدتون ساده هست و با خواندن خود کدها می توانید مشکل را پیدا کنید و یا اینکه حتما باید خطایابی کنید تا مشکل مشخص بشه.

سلام و خسته نباشید

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


همه ی کد ها رو نوشتم به صورتی که اول صفحه ی اسپلش نمایش داداه بشه بعد نرم افزار وارد منوی مطالب میشه
حالا می خواستم افزودن به علاقه مندی رو روی یک فایل لایوت جدا خاصیت اون رو داشته باشم.
البته یکم کدهای زیر رو دست کاری کردم و بقیش به عهده ی شما

توی این کدها سعی کردم به جای اینکه شماره ی سابجکت رو از فایل استرینج بخونه اون رو از پوشه ی لایوت ها بخونه
یعنی قسمت بالایی کد ها رو فک کنم درست اصلاح کردم ولی قسمت پایینی رو خدا میدونه

چند بار سعی کردم ولی اخرش که درست شد خاصیت افزودن به علاقه مندی رو نداشت یعنی با کلیک کردن روی عکس یک متن نمایش داده می شد و تصویر هم عوض می شد ولی به لیست علاقه مندی ها اضافه نمی شد

کد پی‌اچ‌پی:
package ir.rose_soft.alagemandi;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

public class 
Subject_2 extends Activity {


      public 
String Subject_number;
       public 
Editor editor;
       
Globals global = new Globals();
       public 
ImageView iv_favorites;
       public 
SharedPreferences shared;

           protected 
void onCreate(Bundle var1) {
              
super.onCreate(var1);
              
this.setContentView(R.layout.subject_2);
              
this.iv_favorites = (ImageView)this.findViewById(2131230722);
              
Bundle var2 this.getIntent().getExtras();
              if(
var2 != null) {
                 
this.Subject_number var2.getString("subject_number");
              }

              
TextView var3 = (TextView)this.findViewById(2131230724);
              
String var4 "subject_" this.Subject_number;
              
var3.setText(this.getResources().getIdentifier(var4"string"this.getPackageName()));
              
TextView var5 = (TextView)this.findViewById(2131230725);
              
String var6 "subject_text_" this.Subject_number;
              
var5.setText(this.getResources().getIdentifier(var6"string"this.getPackageName()));
              
this.shared this.getSharedPreferences("Prefs"0);
              
this.editor this.shared.edit();
              
int var7 Integer.parseInt(this.Subject_number);
              final 
String var8 "subject_" String.valueOf(var7);
              if(
Boolean.valueOf(this.shared.getBoolean(var8false)).booleanValue()) {
                 
this.iv_favorites.setImageResource(2130837506);
              } else {
                 
this.iv_favorites.setImageResource(2130837505);
              }

              
this.iv_favorites.setOnClickListener(new OnClickListener() {
                 public 
void onClick(View var1) {
                    if(
Boolean.valueOf(Subject_2.this.shared.getBoolean(var8false)).booleanValue()) {
                       
Subject_2.this.editor.putBoolean(var8false);
                       
Subject_2.this.editor.apply();
                       
Subject_2.this.iv_favorites.setImageResource(2130837505);
                       
String var5 Subject_2.this.getResources().getString(2131034119);
                       
Toast.makeText(Subject_2.this.getApplicationContext(), var50).show();
                    } else {
                        
Subject_2.this.editor.putBoolean(var8true);
                        
Subject_2.this.editor.apply();
                        
Subject_2.this.iv_favorites.setImageResource(2130837506);
                       
String var3 Subject_2.this.getResources().getString(2131034118);
                       
Toast.makeText(Subject_2.this.getApplicationContext(), var30).show();
                    }
                 }
              });
           }

           public 
boolean onCreateOptionsMenu(Menu var1) {
              
this.getMenuInflater().inflate(2131165184var1);
              return 
true;
           }

           public 
boolean onOptionsItemSelected(MenuItem var1) {
              switch(
var1.getItemId()) {
              case 
2131230726:
                 
this.startActivity(new Intent(thisFavorites.class));
                 return 
true;
              default:
                 return 
true;
              }
           }
        } 
سلام دوست عزیز من لینک زیر رو به شما پیشنهاد میکنم
http://openandroid.ir/?p=183