2012-03-05 4 views
0

私はWebViewを使用して、リンクを押したときにページのセクションを表示または非表示するJavaScript機能を含め、HTMLコンテンツを表示しています。デフォルトでは、すべてのセクションが非表示になっています。 WebViewの背景を透明に設定して静的な画像を表示するまでは、すべてうまく動作します。ここで透明なWebViewの背景と重複するコンテンツ

は、関連するコードスニペットです:

HTMLセクション:

<a class="togglelink-show" onclick="toggle('zone1');">Test</a> 
<div id="zone1" style="display:none"> 
    <p>Some random text that's normally hidden</p> 
</div> 

はJavaScript:

function toggle(id) { 
    ele = document.getElementById(id); 

    if(ele.style.display == "block") { 
     ele.style.display = "none"; 
    } else { 
     ele.style.display = "block"; 
    } 
} 

私が持っているのWebViewを設定するまで、私は、これら2つの作業罰金を書いたようにwebView.setBackgroundColor(0);を使用する透明な背景その後、セクションを開くときに、WebViewが適切に再レイアウトされず、コンテンツが下のセクションと重複することがあります。

ページを更新するか、またはwebView.clearView()を使用してページを更新すると、ページがセクションが閉じられてリフレッシュされるため、機能しません。助言がありますか?

ウェブビューの背後に静的な画像を表示する別の方法がある場合は、画面に正確に合うようにサイズが変更されます。 (私はHTMLでちょっと錆びていて、背景の画像をタイルする方法しか覚えていないかもしれませんが、これは私が望むものではありません)

答えて

0

私はこれを非常にランダムに解決しました。私は、要素が手品あったけど、私はになってしまってきたことは、このようなものではありません。

は、メインのコンテンツウィンドウの上に空のdivを追加し、スタイルを編集した:

<div id="fixedBackground"><img src="" width="0%" height="0%"/></div> 
//From the stylesheet: 
#fixedBackground { position:fixed; top:0; left:0; width:100%; height:100%;} 
.content {position:relative; z-index:1;} 

これにより、WebViewの背景が透けて見えるようになり、セクションを開いたり閉じたりすると、すべてが正しく再配置されます。

3

私もこれに遭遇しました。 私のソリューションは "webView.setBackgroundColor(0x01010101);"と呼びます 私はそれが多かれ少なかれ透明だと思う。

+0

ありがとうございます - 私は "setBackgroundColor(0x01000000);"を使用しています – ajh158