2

我有一个EditText,WebView用于搜索。TextBox搜索后,用户通过来自服务器的链接获得一些渲染。光标在EditText和 中TextBox闪烁WebView。但即使我尝试在 的 中输入一些TextBox内容WebView,字母也会出现在 中,EditText但不会出现在TextBoxWebView

关于为什么在模拟器中发生此问题的任何想法。

布局

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="match_parent"
 android:background="@drawable/white"
 android:tileMode="repeat" >

 <RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">


   <LinearLayout 
      android:layout_height="wrap_content" 
      android:orientation="horizontal"
      android:layout_width="fill_parent"
      android:layout_marginTop="30dip"
      android:focusable="true" 
      android:focusableInTouchMode="true">  

      <EditText android:text="" 
        android:id="@+id/searchEditText"
        android:layout_height="wrap_content" 
        android:layout_weight="1"
        android:layout_width="fill_parent">
      </EditText>
      <Button android:text="Search" 
        android:id="@+id/searchCatalogButton"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content">
      </Button>

  </LinearLayout>

    <WebView
      android:id="@+id/browserwebview"
      android:fillViewport="true"
      android:layout_marginTop="75dip"
      android:layout_marginBottom="30dip"
      android:layout_height="fill_parent"
      android:layout_width="fill_parent"/>
    <LinearLayout
        android:id="@+id/header"
        android:layout_alignParentTop="true"
        android:layout_width="fill_parent" 
        android:layout_height="30dip"
        android:background="@drawable/black"
        android:tileMode="repeat">
    <ImageButton 
        android:id="@+id/buttonBackCatalog"
        android:src="@drawable/greenarrow"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/black"
        android:tileMode="repeat"/>
    <ImageView 
        android:src="@drawable/logo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:visibility="gone"/>
  </LinearLayout>

  <LinearLayout
    android:layout_alignParentBottom="true"
    android:layout_width="fill_parent" 
    android:layout_height="30dip"
    android:layout_weight="1"
    android:weightSum="5" 
    android:orientation="horizontal"
    android:background="@drawable/black"
    android:tileMode="repeat">

    <LinearLayout 
        android:id="@+id/footerLayoutHome"
        android:clickable="true"
        android:layout_width="fill_parent"
        android:layout_weight="1" 
        android:orientation="vertical"
        android:gravity="center" 
        android:layout_height="fill_parent">

    <ImageButton 
        android:id="@+id/footerMainBtnHome"
        android:layout_width="fill_parent" 
        android:layout_height="14dip"
        android:src="@drawable/home" 
        android:background="@drawable/black"/>
    <TextView 
        android:text="Home" 
        android:textSize="8dip"
        android:textColor="#ffffff"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    </LinearLayout>
    <LinearLayout 
        android:id="@+id/footerLayoutProducts"
        android:clickable="true"
        android:layout_width="fill_parent"
        android:layout_weight="1" 
        android:orientation="vertical"
        android:gravity="center" 
        android:layout_height="fill_parent">

        <ImageButton 
            android:id="@+id/footerMainBtnProducts"
            android:layout_width="fill_parent" 
            android:layout_height="14dip"
            android:src="@drawable/products" 
            android:background="@drawable/black"/> 
        <TextView 
            android:text="Products" 
            android:textSize="8dip"
            android:textColor="#ffffff"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
   </LinearLayout>
   <LinearLayout 
        android:id="@+id/footerLayoutCart"
        android:clickable="true"
        android:layout_width="fill_parent"
        android:layout_weight="1" 
        android:orientation="vertical"
        android:gravity="center" 
        android:layout_height="fill_parent">

        <ImageButton 
            android:id="@+id/footerMainBtnCart"
            android:layout_width="fill_parent" 
            android:layout_height="14dip"
            android:src="@drawable/cart" 
            android:background="@drawable/black"/>
        <TextView 
            android:text="Cart" 
            android:textSize="8dip"
            android:textColor="#ffffff"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

   </LinearLayout>
   <LinearLayout 
        android:id="@+id/footerLayoutFeedback"
        android:clickable="true"
        android:layout_width="fill_parent"
        android:layout_weight="1" 
        android:orientation="vertical"
        android:gravity="center" 
        android:layout_height="fill_parent">

        <ImageButton 
        android:id="@+id/footerMainBtnFeedback"
        android:layout_width="fill_parent" 
        android:layout_height="14dip"
        android:src="@drawable/feedback" 
        android:background="@drawable/black"/>
        <TextView 
        android:text="Feedback" 
        android:textSize="8dip"
        android:textColor="#ffffff"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

   </LinearLayout>  

   <LinearLayout 
      android:id="@+id/footerLayoutHelp"
      android:clickable="true"
      android:layout_width="fill_parent"
      android:layout_weight="1" 
      android:orientation="vertical"
      android:gravity="center" 
      android:layout_height="fill_parent">

       <ImageButton 
        android:id="@+id/footerMainBtnHelp"
        android:layout_width="fill_parent" 
        android:layout_height="14dip" 
        android:src="@drawable/help" 
        android:background="@drawable/black"/>
       <TextView 
        android:text="Help" 
        android:textSize="8dip"
        android:textColor="#ffffff"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    </LinearLayout>                
  </LinearLayout>
 </RelativeLayout>
</LinearLayout>

Java 代码

    webView = (WebView) findViewById(R.id.browserwebview);
    searchEditText = (EditText)findViewById(R.id.searchEditText);
    search = (Button)findViewById(R.id.searchCatalogButton);

    search.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            String urlSearchKey = searchEditText.getText().toString().trim();
            if(urlSearchKey==""){
                Toast.makeText(Catalog.this, "Enter Search Keyword", Toast.LENGTH_LONG).show();

            }
            else{
                url=urlforthesite+urlSearchKey;
                webView.loadUrl(url);
                searchEditText.setText("");
            }

        }
    });`

期待你的答复。

谢谢。

4

2 回答 2

0

根据 webkit 的定制,webview 中文本框的行为可能因设备而异。在原始android源代码中,textBox与android view的editText相结合。但在设备中它可以给出不同的外观。所以这不是问题,它只是那个 api 的行为。在不同的设备上检查它。

于 2012-08-06T05:21:42.457 回答
0

做这2 件事。可能会解决你的问题:))

1)添加 android:focusable="true"webView

<WebView android:id="@+id/browserwebview"
    android:layout_weight="1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:focusable="true"  
    android:fillViewport="true"
    android:layout_marginTop="75dip"
    android:layout_marginBottom="30dip"
  />    

2)添加webView.getSettings().setJavaScriptEnabled(true);在你的 Java 代码中

于 2012-08-06T06:30:35.900 回答