2016-06-20 5 views
-1

私はリストアイテムのクリックごとに静的なHTMLファイルを開きたいのですが、私がリストビューを呼び出すと消えてしまいます。この問題を解消するのを助けてください。各リスト項目でWebViewを開くには?

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="androidthirst.company.abhi.totalenglish.Tab1Fragment"> 

    <!-- TODO: Update blank fragment layout --> 

    <ListView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/listView" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 



</RelativeLayout> 

そして、私の別のリストビューのコードは、この single_row.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <TextView 
     android:layout_width="50dp" 
     android:layout_height="50dp" 
     android:background="#1A237E" 
     android:gravity="center" 
     android:textStyle="bold" 
     android:textSize="30sp" 
     android:layout_margin="9dp" 
     android:textColor="#ffffff" 
     android:id="@+id/imageView" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceLarge" 

     android:id="@+id/textView" 
     android:layout_alignParentTop="true" 
     android:layout_toRightOf="@+id/imageView" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:text="Small Text" 
     android:id="@+id/textView2" 
     android:layout_toRightOf="@+id/imageView" 
     android:layout_below="@+id/textView" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignBottom="@+id/imageView" /> 
    <WebView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/webView"> 

    </WebView> 


</RelativeLayout> 

Here you can see the image i just want to open thml file in first list Item Click

です - : 私Tab1Fragment.javaコードは、この

public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
    // Inflate the layout for this fragment 
    View view = inflater.inflate(R.layout.fragment_tab1, container, false); 

    Resources res = getResources(); 
    mainTopic = res.getStringArray(R.array.MainTopic); 
    mainDescription = res.getStringArray(R.array.DescriptionContent); 
    listView = (ListView) view.findViewById(R.id.listView); 
    MyAdapter myAdapter = new MyAdapter(getActivity(), mainTopic, image1,     
mainDescription); 
     listView.setAdapter(myAdapter); 


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

       switch (position) { 
        case 0: 
         wb=(WebView)view.findViewById(R.id.webView); 
         wb.loadUrl("file:///assets/ActivePassive.html"); 
         wb.getSettings().setJavaScriptEnabled(true); 
         wb.setWebViewClient(new WebViewClient()); 
       } 
      } 
     }); 

     return view; 


    } 
} 

マイfragment_tab1.xmlコードがあります

+0

ヘルプ誰ください –

+0

「私が呼ぶとき」と正確に何が消えている説明。たぶん問題のscreeenshotを追加してください –

+0

あなたの返信をありがとう私はスクリーンショットを追加しています –

答えて

0

あなたのレイアウトは "fragment_tab1"です

View view = inflater.inflate(R.layout.fragment_tab1, container, false); 

あなたWROTレイアウト名は "マイtab1_fragment.xmlコードは次のとおりです。 - " ながら

確認してくださいは、正確なレイアウトということでしょうか?

そして、あなたのWebViewは、アダプタクラスで使用される行のファイルに..です(single_row.xml) あなたが活動をロードしようとした。.. abhi

おかげ..

+0

私はそれを変更しました。私は間違って書いた –

+0

ok abhi、あなたのwebviewはアダプタクラスのレイアウトです... single_row.xml、それはfragment_tab1にあるべきです – Kush

+0

はい、それはsingle_row.xmlクラスにあります –

0

あなたは以下のようなものを使用することができます

String url = "http://www.example.com"; 
    Intent i = new Intent(Intent.ACTION_VIEW); 
    i.setData(Uri.parse(url)); 
    startActivity(i); 
0

ベローコードを試してみてください。

list_Id.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
       @Override 
       public void onItemClick(AdapterView<?> parent, View v, 
             int position, long id) { 
        list_Id.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
         @Override 
         public void onItemClick(AdapterView<?> parent, View v, 
               int position, long id) { 
          WebView webView = new WebView(v.getContext()); 
          String[] urls = getResources().getStringArray(R.array.bookmark_urls); 
          webView.loadUrl(urls[position]); 
         } 
        }); 
       } 
      }); 

作成values内のファイルstring-array.xmlと怒鳴るように、すべてのWebアドレスを入れて:

<resources> 
    <string-array name="bookmark_urls"> 
     <item>http://www.google.com</item> 
     <item>http://www.android.com/</item> 
     <item>http://www.facebook.com/</item> 
     <item>http://www.android.com/</item> 
     <item>http://www.android.com/</item> 
    </string-array> 
</resources> 
+1

[複数の質問に同じ回答]を追加しないでください(http://meta.stackexchange.com/questions/104227/is-it-acceptable-to-ad??da-duplicate-answer-to-several-質問)。あなたが十分な評判を得たら、最高のものに答え、残りを重複としてフラグを立てます。重複していない場合は、質問への投稿を調整します。 –

関連する問題