انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
سرچ در ارایه ای متشکل از چند آرایه، در برنامه اندروید

سرچ در ارایه ای متشکل از چند آرایه، در برنامه اندروید

#1
سلام
من یک اکتیویتی به نام search ساختم و یک لیست ویو  و ادیت تکست هم توی ان هست و قرار هست توی اپلیکیشنم که متشکل از چند اکتیویتی و در هر اکتیویتی
لیست ویو هست (ساده) من توی فایل استرینگ برای هر لیست ویو یک ارایه ساختم و تا اینجا مشکلی ندارم ولی ارایه ای که برای اکتیویتی سرچ ساختم مرجع دادم به چند ارایه
ولی توی لیست ویو نمایش نمیده؟

کد:
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">World Of Sounds</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
    <string name="error_connection">مشکل در اتصال به شبکه اینترنت</string>
    <string name="search">جستجو</string>

    <string name="subject_1">آبزیان</string>
    <string name="subject_2">قورباغه</string>
    <string name="subject_3">خوك‌ خرطوم‌ دراز مالايا</string>
    <string name="subject_4">خرس ها</string>
    <string name="subject_5">اسب ها</string>
    <string name="subject_6"> گرگ ها</string>
    <string name="subject_7"> پرنده ها</string>
    <string name="subject_8">  حشرات</string>
    <string name="subject_9">  کرم ها و حلزون ها</string>
    <string name="subject_10">  شتر ها</string>
    
    
    <string-array name="Animals_Stringarray">
        <!-- 22 -->
         <item name="subject_1">@string/subject_1</item>
         <item name="subject_2">@string/subject_2</item>
         <item name="subject_3">@string/subject_3</item>
         <item name="Bears">خرس ها</item>
         <item name="Horses">اسب ها</item>
         <item name="Wolves">گرگ ها</item>
         <item name="Birds">پرنده ها</item>
         <item name="Insects">حشرات</item>
         <item name="Worms">کرم ها و حلزون ها</item>
         <item name="Camels">شتر ها</item>
         <item name="Lions">شیر ها و ببر ها</item>        
         <item name="Cats ">گربه ها</item>
         <item name="Cows">گاوها</item>
         <item name="Pigs">خوک ها</item>
         <item name="Dogs">سگ ها</item>
         <item name="Primates">پستانداران نخستین</item>
         <item name="Donkeys">میمون ها</item>
         <item name="Reptiles">خزندگان</item>
         <item name="Elephants">فیل ها</item>
         <item name="Rodents ">جوندگان</item>
         <item name="Foxes">روباه ها</item>
         <item name="Sheep">گوسفند و بز ها</item>
    </string-array>
    
    
    
    
    <string-array name="Search">
      <item name="subject_1">@string/subject_1</item>
      <item name="subject_2">@string/subject_2</item>
      <item name="subject_3">@string/subject_3</item>
      <item name="subject_4">@string/subject_4</item>
      <item name="subject_5">@string/subject_5</item>
      <item name="subject_6">@string/subject_6</item>
      <item name="subject_7">@string/subject_7</item>
      <item name="subject_8">@string/subject_8</item>
      <item name="subject_9">@string/subject_9</item>
      
      
    </string-array>
    
</resources>

میخواستم بدونم چطور میتونم یک ارایه بسازم که به چند ارایه ریفر باشه و انگاه توی لیست ویوی مربوطه نمایش بده؟
من از این لینک آموزشی برای ساخت سرچ استفاده کرده ام.
با تشکر
پاسخ

سرچ در ارایه ای متشکل از چند آرایه، در برنامه اندروید

#2
سلام دوست عزیز.
مشکل دیگری را نیز مطرح کرده بودید که من پاسختان را در همین موضوع می دهم.
من پروژتون رو که فرستاده بودید، دانلود کردم و بعد از وارد (import) کردن آن در eclipse ، مستقیم رفتم سراغ فایل Search.java . با مشاهده کدهای آن، خط های زیر را دیدم که باید در آن، نام Activity ای تعریف شود که قصد داریم کاربر با کلیک بر روی item ، به آن Activity وارد شود (و همچنین رفتن به Activity مورد نظر) : 

کد:
if(item.equals(subject)) {
    String StringClass = "com.ahmad.worldofsounds.Subject_" + String.valueOf(x);
    Class<?> c = null;
    if(StringClass != null) {
        try {
            c = Class.forName(StringClass);
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    Intent intent = new Intent(Search.this, c);
    startActivity(intent);
}

مشکل این است که شما در پروژه اندروید خود، Activity هایی با نام های مختلف دارید، در صورتی که ما در آن مبحث مربوط به ساخت جستجو، نام Activity ها را برابر Subject_1 و Subject_2 و همین طور الی آخر در نظر گرفته بودیم. در کد بالا هم تنها مقدار item به نام _Subject اضافه شده است و چون چنین Activity در برنامه اندروید شما وجود ندارد، با force close مواجه خواهید شد.
برای برنامه هایی که دارای Activity هایی با نام های مختلف هستند، قبلا در موضوع زیر صحبت شده است، توصیه می کنم آن را بخوانید :

http://www.kelidestan.com/forum/showthread.php?tid=4703

البته بنده کدهاتون رو کامل نخوندم، ولی این اولین موردی بود که دیدم و بدون هیچ شکی، خطای force close می دهد. بعد از تصحیح این مورد، تعداد کل item ها را هم بررسی کنید که درست تعیین شده باشد.

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط mohammadi66 ، شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان