مشکل در بارگذاری HTML در WebView
با سلام خدمت اساتید
با چه کدی میشه یک فایک HTML رو در یک صفحه WebView بار گذاری کرد ؟
همه قسمتهاش بار گذاری میشه ولی فایل HTML که رو دیتابیس هست رو نمیخونه
من این کد رو زدم ولی بار گذاری نمیشه:
webview.loadUrl(G.selectedApplication.webview);
بنظر من بهترین روش استفاده از Web View اینه که از پوشه Asset استفاده کنی
wv.loadUrl("file:///android_asset/name.html");
شما دوتا ره دارین، یا فایل html رو آماده طراحی کردین و فایل رو داخل پوشه assets کپی میکنید، یا کدهای html رو توی دیتابیسی جایی ذخیره میکنید و هنگام اجرای برنامه صفحه رو ایجاد میکنید،
برای روش اول ازین کد استفاده کنید :
webview.loadUrl(file:///android_asset/my_page.html);
و برای روش دوم : دقت کنید کل تگهای html داخل متغییر html_code ذخیره شده
webview.loadDataWithBaseURL("file:///android_asset/", html_code, "text/html", "charset=utf-8", null);
در ادامه جواب بالا، باید بگم که:
محتوای HTML مثل هر Text ـی که Plain Text هست که وقتی داخل Browser نشون داده میشه تبدیل میشه به یک سری رنگ و فونت و ... و به این کار می گن Render شدن. پس فرقی بین محتوای یک HTML و یک Text ساده نیست بلکه نمایشگر اون مهم هست که اگر Browser باشه می تونه تصویر و ... رو نمایش بده.
حالا شما می تونید هر نوع Plain Text ـی رو داخل دیتابیس ذخیره و بازیابی کنید. کافیه مقدار بازیابی شده را طبق آموزشها داخل یک اشاره گر از جنس String بریزید ( مثل Title و چیزهای دیگه که از دیتابیس خوندیم. )
بعد از اینکه داخل String ریخته شد ( یا به عبارتی همون html_code که رضا در پاسخ بالا نوشته ) به همون شکلی که رضا گفت قابل نمایش در یک WebView هست.
اما باید توجه داشته که نمایش تصویر نیازمند وجود اون در وب ( متصل به اینترنت ) یا تعریف یک ImageLoader برای بارگزاری از SDCard و ... باشه که اگر این رو نیاز داشتید، بحثش مفصل میشه. اما در نمایش تگهای HTML مثل B I و ... مشکلی نخواهد بود و فقط بحث تصویر و Font می مونه.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .