Как установить границу для веб-браузера Android - PullRequest
14 голосов
/ 24 августа 2011

В моей программе при нажатии кнопки веб-просмотр загружается в отдельном макете.этот макет имеет только этот веб-вид.Я хочу добавить границу для этого.Я добавляю отдельный XML-код в качестве фона для этого веб-просмотра следующим образом, но не работает.

<?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>

как добавить границу для веб-просмотра в Android ..?спасибо

Ответы [ 3 ]

25 голосов
/ 24 августа 2011

Заключите WebView в макет, добавьте границу к макету и сохраните отступ 2dp в макете.

4 голосов
/ 18 марта 2014

Ответ Абхинава правильный, я просто добавляю эту дополнительную информацию для абсолютных новичков, таких как я, которые сталкиваются с этим ответом и даже не знают, как «заключить WebView в макет» или «добавить границу к Макет "; надеюсь, это может кому-то помочь:

  1. Создайте новый каталог в /res и назовите его drawable (у вас уже будет drawable-hdpi, drawable-mdpi и т. Д.; Они предназначены для разных разрешений - этот новый каталог drawable будет использоваться независимо от того, резолюции).
  2. Создайте новый XML-файл в drawable и назовите его border.xml (в Android Studio вы можете щелкнуть правой кнопкой мыши по каталогу drawable и выбрать «Создать»> «Drawable Resource File»).
  3. Вставьте все содержимое XML-файла miuranga в border.xml и сохраните его. Это называется «Drawable Resource» и будет добавлено в ваш файл макета на следующем шаге.
  4. В вашем файле макета создайте новый макет вокруг WebView, как я сделал, как показано ниже, с дочерним LinearLayout. Обратите внимание, что LinearLayout извлекает ресурс рисования с атрибутом android:background, установленным в @drawable/border. Я полагаю, что он получает border.xml по имени файла за вычетом расширения. Добавляя границу к макету, который охватывает WebView, вы визуально получаете границу вокруг WebView, что прекрасно работает.

activity_main.xml содержимое:

<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>
4 голосов
/ 24 августа 2011

Сам WebView не может иметь Drawable в качестве фона - см. WebView.onDraw в WebView.java. Он имеет только сплошной цвет, по умолчанию или взят из содержимого HTML. Решением является (как уже предлагалось) сделать WebView дочерним элементом другого виджета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...