کلیدستان

نسخه‌ی کامل: دریافت فایل html از دیتابیس و نمایش در webView
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
با عرض سلام و خسته نباشید
من میخوام داخل دیتابیس از فایل های آماده html که حاوی متن هستند و در پوشه assets ریخته میشند در یک برنامه محتوا محور در صفحه ای که در آن یک webview هست استفاده کنم .
در واقع میخوام برنامه محتوا محور درست کنم با استفاده از فراخوانی html و نمایش اون در webview.
میتونید راهنماییم کنید که از چه کدهایی برای دریافت html و فراخوانی اون در webview بایذ استفاده کنم.
مثل کد ()settext. که متن رو از دیتابیس میگیره و داخل edittext میاره.
سلام برای ست کردن یک فایل اچ تی ام ال از پوشه ی   assets  میتونید از این کد استفاده کنید

کد پی‌اچ‌پی:
WebView webView = (WebView findViewById(R.id.webView );
webView.loadUrl("file:///android_assets/index.html"); 

همونطور که در کد هم مشخصه index  مییشه فایلی که در پوشه ی assets  قرار داره و با وب ویو ست میشه یا بهتره بگیم در وب ویو لود میشه .
موفق باشید
 سلام و عرض تشکر
گمان میکنم سوال رو خوب مطرح نکردم،پوزش میطلبم.
سوال من اینست که چطور با ساخت یک activity تعداد زیادی فایل html رو بسته به اینکه در لیست ویو بر روی کدام آیتم کلیک شده از فولدر assets دریافت کنم و در webview نمایش دهم.
من میخوام یک لیست ویو داشته باشم با مثلا 10 آیتم در لیست آن که کاربر مثلا اگر روی آیتم 5 کلیک کرد برنامه فایل html مرتبط با آن را در webview نمایش دهد.
در مورد تکست ویو کدها مشخص است ولی در مورد فایل html چطور webview را محتوا محور کنم که بسته به کلیک هر آیتم در لیست یک html مرتبط را نمایش دهد.
من تمایل بیشتری به بکار گیری html برای نمایش متون دارم تا edittext و فایل های txt.
کمال تشکر رو از الطاف جنابعالی دارم
برای اینکار هم میتونی از همین کد استفاده کنید با دو اکتیوتی یه لیست ویو داخل یکی از اکتیوتی ها میزاریم وبا استفاده از کلید236   شماره ی ایتم کلیک شده رو انتقال میدم به اکتیوتی بعدی
داخل اکتیوتی بعدی شماره ی ایتم رو با استفاده از همون کلیدی ک گفتم (کلید 236 )میگیریم میدیم به سویچ داخل سویچ هم برای هر کیس یه ادرس انتخاب میکنیم اینطوری با کلیک روی هر ایتم یه کیس مشخص یه اچ تی ام ال مشخصی رو با صفحه ست میکنه
به عنوان مثال اکتیوتی اول که داری لیست هست کدش به این شکل میشه :

کد پی‌اچ‌پی:
public class MainActivity extends Activity {
    private 
Activity t;
    private 
ListView list;
    @
Override
    
protected void onCreate(Bundle savedInstanceState) {
        
super.onCreate(savedInstanceState);
        
requestWindowFeature(Window.FEATURE_NO_TITLE);
        
setContentView(R.layout.astronomy);

        final 
String item ={"ایتم یک ","ایتم دو "};
        list=(
ListViewfindViewById(R.id.listViewa);
        
t=this;
        list.
setAdapter(new ArrayAdapter<String>;(this,R.layout.row,R.id.row_txt,item));
        list.
setOnItemClickListener(new AdapterView.OnItemClickListener() {

            public 
void onItemClick(AdapterView<?> arg0, View arg1, int indexItem, long arg3) {

                        Intent i = new Intent(MainActivity.this, WebView.class);
                        i.putExtra("btn", indexItem);// indexItem  در اینجا شماره ایتم انخاب شده میباشد 
                        startActivity(i);
                        break;
            }
        });

    }


و برای اکتیوتی که وب ویو داخل اون هست :

کد پی‌اچ‌پی:
public class WebView extends Activity {

    @
Override
    
protected void onCreate(Bundle savedInstanceState) {
        
// TODO Auto-generated method stub
        
super.onCreate(savedInstanceState);
        
setContentView(R.layout.webview_activity);
        
       
WebView webView = (WebViewfindViewById(R.id.webView);
       
        try {
             
Bundle extras getIntent().getExtras();
            int indexItem extras.getInt("variable_name");

            switch (
indexItem) {
                case 
0:
                    
webView.loadUrl("file:///android_asset/index1.html");
                    break;
                case 
1:
                    
web.loadUrl("file:///android_asset/index2.html");
                    break;
                } catch (Exception e) {
                }
            } } 
 

موفق باشید
 
اگه فایل های htmlتون به ترتیب شماره باشه مثلا index1,index2,index3,... میتونید بدون استفاده از سویچ هم اینکار رو انجام دهید به این صورت که ادرس وب ویو مورد نظر رو انتخاب میکنید و مقداری که از اکتیوتی قبل گرفتی با مسیر فایل جمع میکنید اینطوری میتونید کد کمتری نوشته باشید :

کد پی‌اچ‌پی:
WebView webView = (WebViewfindViewById(R.id.webView);
       
        try {
             
Bundle extras getIntent().getExtras();
            
int indexItem extras.getInt("variable_name");

            
webView.loadUrl("file:///android_asset/index" indexItem ".html");

            }catch(
Exception e ){
            } 
سلام و تشکر فراوان بابت وقتی که در اختیار بنده گذاشتید
سلام
لطفا سورس کلی برنامه رو بذارید.
خیلی متشکرم این مطلب کمک خوبی کرد 
میشه لطف کنید سورس این برنامه رو هم بذارید یا یه برنامه که به این طریق کار کرده (فراخوانی یک سری فایل html از پوشه assets از طریق listView)