کلیدستان

نسخه‌ی کامل: انتقال از listview به webview های مختلف
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام خدمت اساتید محترم
چه کدی باید نوشت که لیست ویو بعد از کلیک کردن روی ایتم های مختلف در وب ویو صفحه اون ایتم رو نمایش بده؟
البته یه کد نوشتم ولی کد ها خیلی حجیم میشن.
درضمن فایل های وب در فایل assets قرار گرفته
راهنمایی کنید ممنون میشم
Iran Heart
این کد واسه کاستوم لیست ویو هست اما میتونی واسه لیست ویو معمولی هم به کار ببری
اول تو mainactivity:
یه لیست ویو بساز اسمشو بزار lv
کد پی‌اچ‌پی:
ListView lv

بعد توی متد on create بش یه اداپتر بده میتونه اداپتر کاستوم لیست ویو و یا اداپتر لیست ویو ساده باشه توی مثال من اداپتر ساده هست:
کد:
lv = (ListView)findViewbyid(R.id.listview1);
,lv.setAdapter(new ArrayAdapter<String>(this
           android.R.layout.simple_list_item_1,
           myarray));


دقت کن به جای myarray
یه آرایه از جنس متن بده که نوشته هر ستر لیستت رو تشکلی میده
حالا این کد رو بعد از ست کرددن اداپتر بده:

کد:
lv.setOnItemClickListener(new OnItemClickListener() {

            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                    long arg3) {
                // TODO Auto-generated method stub
                switch (arg2) {
                case 0:
                    Intent in = new Intent(youractivity.this, webviewactivity.class);
                    in .putExtra("weburl", "file:///android_asset/name.htm")
                    startActivity(in);
                    break;

                case 1:
                    
                    break;
                case 2:
                    
                    break;
                }    
            }
        
        });

خودت میدونی دگه وقتی رو ایتم 1 کلیک شه میره case0 رو اجرا میکنه ایتم2 case1 رو اجرا میکنه و ...
یادت باشه به جای name.htm نام  فایل html خودت رو بنویس پسوندش یادت نره
حالا یه اکتیویتی به نامwebactivity بساز و این کدو بش بده تمام

یادت باشه تو فایل xml 
یه webview بسازی
کد:
Bundle extras = getIntent().getExtras();
if (extras != null) {
   String myVariable_2 = extras.getString("weburl");
   WebView vb = (WebView)view.findViewById(R.id.webView1);
vb.loadUrl(myVariable_2);
}

یا علی
(۱۳۹۵/۰۱/۱۴, ۱۱:۲۵ ق.ظ)ail603601 نوشته: [ -> ]این کد واسه کاستوم لیست ویو هست اما میتونی واسه لیست ویو معمولی هم به کار ببری
اول تو mainactivity:
یه لیست ویو بساز اسمشو بزار lv
کد پی‌اچ‌پی:
ListView lv

بعد توی متد on create بش یه اداپتر بده میتونه اداپتر کاستوم لیست ویو و یا اداپتر لیست ویو ساده باشه توی مثال من اداپتر ساده هست:
کد:
lv = (ListView)findViewbyid(R.id.listview1);
,lv.setAdapter(new ArrayAdapter<String>(this
           android.R.layout.simple_list_item_1,
           myarray));


دقت کن به جای myarray
یه آرایه از جنس متن بده که نوشته هر ستر لیستت رو تشکلی میده
حالا این کد رو بعد از ست کرددن اداپتر بده:

کد:
lv.setOnItemClickListener(new OnItemClickListener() {

            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                    long arg3) {
                // TODO Auto-generated method stub
                switch (arg2) {
                case 0:
                    Intent in = new Intent(youractivity.this, webviewactivity.class);
                    in .putExtra("weburl", "file:///android_asset/name.htm")
                    startActivity(in);
                    break;

                case 1:
                    
                    break;
                case 2:
                    
                    break;
                }    
            }
        
        });

خودت میدونی دگه وقتی رو ایتم 1 کلیک شه میره case0 رو اجرا میکنه ایتم2 case1 رو اجرا میکنه و ...
یادت باشه به جای name.htm نام  فایل html خودت رو بنویس پسوندش یادت نره
حالا یه اکتیویتی به نامwebactivity بساز و این کدو بش بده تمام

یادت باشه تو فایل xml 
یه webview بسازی
کد:
Bundle extras = getIntent().getExtras();
if (extras != null) {
   String myVariable_2 = extras.getString("weburl");
   WebView vb = (WebView)view.findViewById(R.id.webView1);
vb.loadUrl(myVariable_2);
}

یا علی

ممنون  از راهنماییت
منم تقریبا همین کارو کردم
ولی میخام مثل کلید  843
که برای اسم عکس ها یه ارایه قرار داده بعد اونا رو ادرس دهی کرده
میشه اینطور کدی نوشت که در وب ویو نمایش داد؟
ممنون
اگه منظورتون اینه که فقط به جای لیست ویو از کاستوم لیست ویو استفاده کرد
بله میشهSmile