2011-08-24 24 views
12

Programımda web görünümü, düğme tıklatıldığında ayrı bir düzende yüklenir. Bu düzen sadece bu web görünümüne sahip. Bunun için sınır eklemek istiyorum. Bu web görünümü için arka plana ayrı XML ekledim, ancak çalışmıyor.Android webview için kenarlık nasıl ayarlanır

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
<solid android:color="#FFFFFF" /> 
<stroke android:width="10dp" android:color="#000000" /> 
<padding android:left="2dp" android:top="2dp" android:right="2dp"android:bottom="2dp"/> 
</shape> 

nasıl Android'de Web görünümündeki bir sınır ekleyebilirsiniz ..? Teşekkürler

+1

[SI cevap] Bu bakınız olabilir (http://stackoverflow.com/questions/7074546/border-texture-for-a-view/7074764# 7074764)? –

cevap

22

Web Görünümü'nü bir Düzen'de kapayın, Düzenin kenarlığını ekleyin ve düzene 2dp'lik bir dolgu ekleyin.

+0

çalışmaları sayesinde .. !! – Miuranga

+0

Dolguya ihtiyaç duyulmasının belirli bir nedeni nedir? –

+0

Belki biraz geç, ama dolgu nesneler için kenar boşluğu gibi, bu yüzden web sayfası düzenleme arka plan –

4

WebView kendisi arka plan olarak Drawable olamaz - WebView.java WebView.onDraw bakın. Yalnızca düz renk var, varsayılan veya html içeriğinden alındı. Çözüm, WebView'i diğer Widget'ın alt öğesi yapmak için (önceden önerildiği gibi).

4

Abhinav'ın cevabı doğru, sadece bu ek bilgi ile bu yanıtla karşılaşan ve henüz "Nasıl bir Yerleşimdeki Web Görünümü'nü kapatacağım" veya " tasarım"; bakılmaksızın kullanılacaktır bu yeni dizin drawable - Bu farklı çözünürlükler için vardır; o drawable (zaten vb drawable-hdpi, drawable-mdpi, gerekecek

  1. /res altında yeni bir dizin oluşturun ve isim: umarım birileri yardımcı olabilir çözüm).
  2. drawable altında yeni bir XML dosyası oluşturun ve border.xml olarak adlandırın (Android Studio'da drawable dizinini sağ tıklayıp Yeni> Çizim Kaynağı Dosyasını tıklatabilirsiniz).
  3. Miuranga'nın XML içeriğinin tamamını border.xml'a yapıştırın ve kaydedin. Buna "Çizilebilir Kaynak" denir ve bir sonraki adımda düzen dosyanızın içine çekilir.
  4. Yerleşim dosyanızda, aşağıda gösterildiği gibi, Web Linear'ın etrafında yeni bir Layout oluşturun. LinearLayout, android:background@drawable/border olarak ayarlanmış öznitelik ile çekilebilir kaynağı aldığını unutmayın. Dosya uzantısına ek olarak dosya adıyla border.xml'u aldığına inanıyorum. WebView'i kapsayan Düzen'e sınır ekleyerek, görsel olarak Web görünümü çevresinde güzel bir şekilde çalışan bir sınır elde edersiniz.

activity_main.xml içeriği:

<LinearLayout 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="com.example.test.app.MainActivity" 
    android:orientation="vertical"> 
<LinearLayout android:background="@drawable/border" 
        android:layout_width="match_parent" 
        android:layout_height="380px"> 
    <WebView xmlns:android="http://schemas.android.com/apk/res/android" 
         android:id="@+id/webview" 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" /> 
    </LinearLayout> 
</LinearLayout> 
+0

örtüşmesini önlemek için dolgu gerekli olduğunu teşekkürler Bu benim için büyük çalıştı. Eklenecek başka bir şey de: bir kenar çizgisi ekranın kenarlarından biraz boşluk bırakmak için bir android: padding = "5dp" kök LinearLayout (birincisi) ekleyebilirsiniz. –