Несколько курсоров WebView и Textbox - PullRequest
0 голосов
/ 20 июня 2011

Я делал собственный браузер, используя WebView для загрузки страниц, используя EditText для ввода веб-адреса.

Проблема возникает, когда вы нажимаете адрес EditText, а затемнажмите обратно внутри WebView.Обычно, только один из них должен быть в состоянии быть выбранным, но в этом случае, если вы выбираете EditText в пределах WebView, он фактически дает вам два курсора и сохраняет адресную строку активной (то есть, если вы пытаетесьвведите в поисковой строке Google, например, когда оба "активны", что он возвращает то, что вы вводите в адресную строку).

Я попытался сделать onClickListener для WebView, чтобы запросить фокускаждый раз, когда к нему прикасаются, но он не удаляет фокус из адресной строки после выбора.

mWebView.setOnClickListener(new View.OnClickListener(){
    public void onClick(View view) {
        mWebView.requestFocus();
    }
});

Есть ли способ связать WebView и адрес EditText так, чтобы только одиниз них можно выбрать в любой момент времени?

Вот макет:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:orientation="vertical" 
    android:baselineAligned="true" 
    android:id="@+id/mainPanel">

<LinearLayout android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="0" android:id="@+id/addressBar">
    <EditText android:id="@+id/address" 
            android:layout_weight="1" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" android:lines="1">
    </EditText>
    <Button android:layout_weight="0" 
        android:layout_width="40dip" 
        android:layout_height="40dip" 
        android:layout_gravity="top" 
        android:background="@drawable/ic_menu_directions" 
        android:clickable="true" 
        android:id="@+id/go">
    </Button>
</LinearLayout>
    <WebView android:layout_width="fill_parent" 
        android:id="@+id/webview" 
        android:layout_height="wrap_content" 
        android:layout_weight="50">
        <requestFocus/>
    </WebView>
    <ProgressBar android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" android:id="@+id/progbar" android:layout_width="fill_parent"></ProgressBar>
</LinearLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...