2016-01-24 126 views
2

我有在的EditText由鍵盤

<CoordinateLayout> 
... 
    <NestedScrollView> 
    ... 
     <RelativeLayout> <!-- This is inside an included xml layout --> 
     ... 
      <EditText 
       android:id="@+id/rateCalculator" 
       android:layout_width="wrap_content" 
       android:layout_height="48dp" 
       android:background="@color/colorPrimary" 
       android:inputType="number" 
       android:maxLength="5" 
       android:gravity="center" 
       android:textColor="#FFFFFF" 
       android:layout_alignParentBottom="true" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="true" 
       android:layout_alignParentRight="true" 
       android:layout_alignParentEnd="true" 
       android:paddingLeft="60dp" /> 
     </RelativeLayout> 
    </NestedScrollView> 
</CoordinateLayout> 

EditText層次中的EditText正在被Android的軟鍵盤覆蓋時,它正在對焦點覆蓋!所以我無法看到輸入時正在鍵入的內容!

更新:

這是我的清單代碼。沒有幫助!

<activity 
     android:name=".OfferRide" 
     android:label="@string/title_activity_offer_ride" 
     android:screenOrientation="portrait" 
     android:windowSoftInputMode="adjustPan" 
     android:theme="@style/AppTheme.NoActionBar" /> 

enter image description here

enter image description here

+1

根據您想要獲得的行爲,您可以在Manifest的活動聲明中使用android:windowSoftInputMode =「adjustResize」或android:windowSoftInputMode =「adjustPan」。 – thetonrifles

回答

2

EditText中刪除gravity使它!這似乎是一個錯誤。

<EditText 
    android:id="@+id/rateCalculator" 
    android:layout_width="wrap_content" 
    android:layout_height="48dp" 
    android:background="@color/colorPrimary" 
    android:inputType="number" 
    android:maxLength="5" 
    android:textColor="#FFFFFF" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:paddingLeft="60dp" /> 
+0

我認爲這不是一個錯誤,這是一個錯字錯誤,或者你可能沒有看到或錯誤的寫作,但是,我的答案與消除重力? – Mohsen

+2

將檢查,讓你現在知道:) – Sibidharan

+3

嗯,沒有任何工作,除了消除重力!我在互聯網上做了一項研究,它說這是一個錯誤! @ LinX64謝謝你的努力。 – Sibidharan

0

你可以試試adjustPan,可供windowSoftInputMode adjustResize選項你AndroidManifest如下:

<activity 
    ... 
    android:windowSoftInputMode="adjustPan" > 
</activity> 

您可以瞭解更多關於它從here

+1

我認爲這個問題是由於NoActionBar,主題,使得全屏活動影響adjustpan的工作,調整..功能..參考這個[問題](http://stackoverflow.com/questions/4558810/adjustpan-not- prevent-keyboard-from-covering-edittext) –

0

根據您想獲得的行爲,您可以在Manifest的活動聲明中使用android:windowSoftInputMode =「adjustResize」或android:windowSoftInputMode =「adjustPan」。

0

以下是完整的DOC:http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft

android:windowSoftInputMode=["stateUnspecified", 
             "stateUnchanged", "stateHidden", 
             "stateAlwaysHidden", "stateVisible", 
             "stateAlwaysVisible", "adjustUnspecified", 
             "adjustResize", "adjustPan"] > 

活動的主窗口如何與包含屏幕上的軟鍵盤窗口 交互。此屬性 的設置會影響兩件事情:軟鍵盤的狀態 - 無論是隱藏還是可見 - 是否爲 - 何時該活動成爲用戶注意力的焦點 。對活動的主窗口進行的調整 - 無論是 它是調整較小的尺寸爲軟鍵盤騰出空間,或 其內容平移,使當前焦點可見,當軟鍵盤覆蓋部分 窗口。該設置必須是下表中列出的 值之一,或者一個 「state ...」值加上一個「adjust ...」值的組合。在任一組中設置多個值 - 例如多個「狀態...」值 - 具有 未定義的結果。單個值由豎線 (|)分隔。例如:

<activity android:windowSoftInputMode="stateVisible|adjustResize" . . . > 

值此處設置(除「stateUnspecified」等 「adjustUnspecified」)在主題設置覆蓋值。

標誌:

  • 「stateUnspecified」
  • 「stateUnchanged」
  • 「stateHidden」 - 軟鍵盤的狀態 - 無論是隱藏或顯示 - 當活動成爲焦點的用戶關注。
  • 「stateAlwaysHidden」
  • 「stateVisible」
  • 「stateAlwaysVisible」
  • 「adjustUnspecified」
  • 「adjustResize」

或者有時候java會做到這一點:

EditText edtView=(EditText)findViewById(R.id.editTextConvertValue); 
    edtView.setInputType((InputType.TYPE_NULL); 

看看:

https://stackoverflow.com/a/6122733/4409113

+1

檢查這個..請等待! – Sibidharan

+0

沒有幫助!它仍然是一樣的! – Sibidharan

+0

我找到了答案。 EditText中的'gravity'是錯誤的原因。刪除有幫助!我正在回答。謝謝你的幫助。 – Sibidharan