Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:webview未显示在定义的活动上_Java_Android_Webview - Fatal编程技术网

Java Android:webview未显示在定义的活动上

Java Android:webview未显示在定义的活动上,java,android,webview,Java,Android,Webview,我想在同一活动上显示webview和listview。 如果我在webview中显示一个简短的html代码,就可以了,一半的窗口是专用于webview的。 但是如果我在webview中加载一个url,屏幕上指定给web视图的部分是空的,webview的内容显示在一个新的活动上。 你能帮我吗 .xml文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.andr

我想在同一活动上显示webview和listview。 如果我在webview中显示一个简短的html代码,就可以了,一半的窗口是专用于webview的。 但是如果我在webview中加载一个url,屏幕上指定给web视图的部分是空的,webview的内容显示在一个新的活动上。 你能帮我吗

.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/wikipediaCompo"
        android:layout_width="match_parent"
        android:layout_height="300dp" />

    <ListView
        android:id="@+id/list_oeuvres"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

java代码:

public class Display2 extends Activity {

    public ListView mListOeuvres;
    public WebView wikipediaCompo;

    public String[] infoOeuvres = new String[6];
    public int i=0;
    public String debug = "debug";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.display_oeuvres);

        mListOeuvres = (ListView) findViewById(R.id.list_oeuvres);
        try {
            InputStream is = getAssets().open("oeuvres.txt");
            Reader reader = new InputStreamReader(is);
            BufferedReader br = new BufferedReader(reader);

            String line;
            while ((line = br.readLine()) != null) {
                //Log.e("code",line);
                String[] RowData = line.split("\\*");
                String nom = RowData[0];
                String refYouTube = RowData[1];
                String date = RowData[2];
                String duree = RowData[3];
                String interpretes = RowData[4];
                infoOeuvres[i] = nom +", "+date+" "+duree+" ("+interpretes+")";
                i++;
            }

        } catch (IOException ex) {
            ex.printStackTrace();
        }
        i=i-1;

        final ArrayAdapter<String> adapter = new ArrayAdapter<String>(Display2.this,
                android.R.layout.simple_list_item_1, infoOeuvres);

        String url="https://en.wikipedia.org/wiki/Ferdinando_Bertoni";

        wikipediaCompo = (WebView) findViewById(R.id.wikipediaCompo);

        // Configure la webview pour l'utilisation du javascript
        WebSettings webSettings = wikipediaCompo.getSettings();
        //WebSettings.setJavaScriptEnabled(true);

        // Permet l'ouverture des fenêtres
        webSettings.setJavaScriptCanOpenWindowsAutomatically(true);

        // Autorise le stockage DOM (Document Object Model)
        webSettings.setDomStorageEnabled(true);

        // Load the url
        wikipediaCompo.loadUrl(url);
        // Test with html code
        /*String temp = "<html><body>" + "<p align=\"justify\">"
                + "TEST" + "</p> "
                + "</body></html>";
        wikipediaCompo.loadData(temp, "text/html", "utf-8");*/

        mListOeuvres.setAdapter(adapter);
        mListOeuvres.setOnItemClickListener(new AdapterView.OnItemClickListener(){
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

                String pos = String.valueOf(parent.getItemAtPosition(position));

                final GlobalClass globalVariable = (GlobalClass) getApplicationContext();

                //Set name and email in global/application context
                globalVariable.setNoOeuvre(position);

                Intent i = new Intent(Display2.this, Display3.class);
                startActivity(i);
            }
        });
    }
}
public class Display2扩展活动{
公共列表视图;
公共网络视图维基百科;
public String[]infoOeuvres=新字符串[6];
公共整数i=0;
公共字符串debug=“debug”;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.display_oeuvres);
mListOeuvres=(ListView)findViewById(R.id.list_oeuvres);
试一试{
InputStream=getAssets().open(“oeuvres.txt”);
Reader Reader=新的InputStreamReader(is);
BufferedReader br=新的BufferedReader(读卡器);
弦线;
而((line=br.readLine())!=null){
//Log.e(“代码”,第行);
String[]RowData=line.split(\\*);
字符串名称=行数据[0];
字符串refYouTube=RowData[1];
字符串日期=行数据[2];
字符串duree=RowData[3];
字符串解释=行数据[4];
信息作品[i]=名称+,“+date+”,“+duree+”(“+Translations+”);
i++;
}
}捕获(IOEX异常){
例如printStackTrace();
}
i=i-1;
最终ArrayAdapter适配器=新的ArrayAdapter(Display2.this,
android.R.layout.simple_list_item_1,infoouvres);
字符串url=”https://en.wikipedia.org/wiki/Ferdinando_Bertoni";
wikipediaCompo=(WebView)findViewById(R.id.wikipediaCompo);
//配置la webview pour l'Usilization du javascript
WebSettings WebSettings=wikipediaCompo.getSettings();
//setJavaScriptEnabled(true);
//这是一个很好的选择
setJavaScriptCanOpenWindowsAutomatically(true);
//Autorise le stockage DOM(文档对象模型)
webSettings.setDomStorageEnabled(true);
//加载url
wikipediaCompo.loadUrl(url);
//使用html代码进行测试
/*字符串temp=”“+”

“ +“测试”+“

” + ""; wikipediaCompo.loadData(临时、“文本/html”、“utf-8”)*/ mListOeuvres.设置适配器(适配器); setOnItemClickListener(新的AdapterView.OnItemClickListener(){ @凌驾 public void onItemClick(AdapterView父对象、视图、整型位置、长id){ String pos=String.valueOf(parent.getItemAtPosition(position)); 最终全局类globalVariable=(全局类)getApplicationContext(); //在全局/应用程序上下文中设置名称和电子邮件 全局变量。Setnoouvre(位置); 意图i=新意图(Display2.this,Display3.class); 星触觉(i); } }); } }
在wikipediaCompo.loadUrl(url)之后添加此代码


清单中的internet权限?
wikipediaCompo.setWebViewClient(new WebViewClient()
{
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url)
        {
           return false;
        }
 });