#android #android-activity #webview
#Android #android-активность #webview
Вопрос:
У меня проблема с моим WebView, и я не знаю, как это исправить. До добавления WebView у меня был ListView, теперь у меня есть только белый экран, когда я запускаю действие. Не могли бы вы помочь мне это исправить, пожалуйста?
Вот XML-файл :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView
android:id="@ id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<ListView
android:id="@ id/lvMods"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</ListView>
</LinearLayout>
И мой файл Java :
import android.os.Bundle;
import android.view.View;
import android.webkit.WebView;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.AdapterView.OnItemClickListener;
public class Mods extends Test {
private ListView lvMods;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.listemods);
lvMods = (ListView)findViewById(R.id.lvMods);
String[] listeStrings = {"1","2","3","4"};
lvMods.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,listeStrings));
lvMods.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
CallFunc(position);
}
private void CallFunc(int position) {
WebView wvpdf = (WebView)findViewById(R.id.webview);
wvpdf.getSettings().setJavaScriptEnabled(true);
switch (position) {
case 0:
wvpdf.loadUrl("http://docs.google.com/gview?embedded=trueamp;url=XXXXXXXXXXXXXXXXXXXXXXXXXX");
break;
case 1 :
wvpdf.loadUrl("http://docs.google.com/gview?embedded=trueamp;url=XXXXXXXXXXXXXXXXXXXXXXX");
break;
case 2 :
wvpdf.loadUrl("http://docs.google.com/gview?embedded=trueamp;url=XXXXXXXXXXXXXXXXXXX");
break;
case 3 :
wvpdf.loadUrl("http://docs.google.com/gview?embedded=trueamp;url=XXXXXXXXXXXXXXX");
}
}
});
}}
Примечание: в моем манифесте у меня есть разрешения на доступ в Интернет
Большое вам спасибо
Комментарии:
1. что это за макет listemod.. вы это разработали ..?
Ответ №1:
Вместо установки layout:height=»fill_parent»webview в качестве fillparent сделайте его layout_height=»wrap_content». Потому что, если вы используете webview в качестве родительского элемента для заполнения, вы не сможете увидеть listview. Я установил минимум: высота и цвет фона не являются обязательными.
Не забудьте проголосовать за мой ответ. Если это полезно для вас.
Спасибо
Дипак
Пожалуйста, найдите следующий xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView
android:id="@ id/webview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#000000"
android:minHeight="60dip"
/>
<ListView
android:id="@ id/lvMods"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
>
</ListView>
</LinearLayout>
Комментарии:
1. Большое вам спасибо, я попробовал вашу модификацию, и она работает!
Ответ №2:
Не используйте fill_parent
для всех View
.. Попробуйте вместо этого использовать weight для управления пропорциями макета…