2014-11-24 81 views
0

我正在嘗試將webview添加到我的項目中以獲得聊天室。然而,只要我在聊天中輸入文字,鍵盤就會再見,這有點煩人。有沒有簡單的方法來強制鍵盤保持打開狀態以便輸入。強制Android始終在webview中顯示鍵盤

我的代碼:

GoChatActivity.java

package com.test.abc.activity; 
import com.test.abc.xx.R; 
import android.annotation.SuppressLint; 
import android.app.Activity; 
import android.content.Context; 
import android.os.Bundle; 
import android.view.View; 
import android.view.inputmethod.InputMethodManager; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

public class GoChatActivity extends Activity { 

@SuppressLint("SetJavaScriptEnabled") 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.reg); 
    WebView webView = (WebView) findViewById(R.id.webView1); 
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.setWebViewClient(new WebViewClient()); 
    webView.loadUrl("http://dev.openflex.net/candy/"); 
    webView.requestFocus(View.FOCUS_DOWN); 
    InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
    mgr.showSoftInput(webView, InputMethodManager.SHOW_IMPLICIT); 




} 


} 

我在佈局reg.xml是

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

<TextView 
    android:layout_width="match_parent" 
    android:layout_height="46dip" 
    android:background="@drawable/skin_header_bar_bg" 
    android:ellipsize="end" 
    android:gravity="center" 
    android:singleLine="true" 
    android:text="Chat Room" 
    android:textColor="@color/skin_bar_text" 
    android:textSize="19.0sp" /> 

<com.test.abc.scrollview.BounceScrollView 
    android:id="@+id/scrollView" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/coversation_bg" 
    android:fadingEdge="none" 
    android:fillViewport="true" 
    android:scrollbarThumbVertical="@drawable/scrollbar_handle_vertical" > 

<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/webView1" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
/> 

</com.test.abc.scrollview.BounceScrollView> 

</LinearLayout> 

我的AndroidManifest.xml這項活動

<activity 
     android:name="com.test.abc.activity.GoChatActivity" 
     android:alwaysRetainTaskState="true" 
     android:configChanges="locale|keyboardHidden|orientation|screenSize" 
     android:exported="true" 
     android:windowSoftInputMode="stateVisible" 
     android:hardwareAccelerated="true" 
     android:launchMode="singleTop" 
     android:theme="@style/Default.SwipeBack.NoTitleBar" 
     > 
    </activity> 

我所尋找的是鍵盤始終保持開放一次我在聊天室(網址是從聊天開發者網站上的聊天,讓我的將是相同的。)

任何想法如何解決這個問題?請注意,我是Eclipse/Android的新手,所以一個有解釋的工作示例將對大多數人有所幫助,因爲我通過這麼做了:)

在附註中,當前聊天的工作方式如下所示:如果輸入測試,則可以用鍵盤上的GO按鈕發送它,然後隱藏鍵盤。或者你可以鍵入文本,klick發送(在web視圖中),然後他們鍵盤皮,它不會被髮送,你必須再次點擊發送按鈕...有點煩人,如果你問我:)

感謝您的時間。

回答

0

使用這種在烏拉圭回合清單activity.hope它的工作原理

android:windowSoftInputMode="stateAlwaysVisible" 

或本

android:windowSoftInputMode="adjustPan|stateAlwaysVisible" 
+0

沒有爲你工作? – Darpan 2014-11-24 12:35:09

+0

雅而不是在web視圖中,我只是建議他嘗試.... – 2014-11-24 12:36:54

+0

試過,但也沒有運氣 – 2014-11-25 03:14:36