无论我做什么,我的EditText都显示如下:
我的XML:
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_layout_search"
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_gravity="top"
android:gravity="top"
android:layout_height="wrap_content">
<EditText
android:background="@null"
android:textColor="@color/black"
android:layout_centerInParent="true"
android:gravity="top"
android:layout_gravity="top"
android:id="@+id/SearchText"
android:textColorLink="@color/black"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColorHint="@color/normatext"
android:inputType="text"/>
</android.support.design.widget.TextInputLayout>
我在每个可能的变体中更改了gravity
和layout_gravity
的所有可能值!有什么想法吗?
编辑: 完整布局:
<LinearLayout
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_marginTop="0dp"
android:paddingTop="6dp"
android:paddingBottom="5dp"
android:layout_margin="3dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_height="45dp">
<Button
android:layout_width="43dp"
android:layout_height="wrap_content"
android:background="@drawable/ham"
android:id="@+id/hambtn"
android:textColorHint="@color/black"
android:layout_weight="0"
/>
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_layout_search"
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_gravity="top"
android:gravity="top"
android:layout_height="wrap_content">
<EditText
android:background="@null"
android:textColor="@color/black"
android:layout_centerInParent="true"
android:gravity="top"
android:layout_gravity="top"
android:id="@+id/SearchText"
android:textColorLink="@color/black"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColorHint="@color/normatext"
android:inputType="text"/>
</android.support.design.widget.TextInputLayout>
<Button
android:layout_width="55dp"
android:layout_weight="0"
android:layout_height="match_parent"
android:background="@drawable/my_button_bg"
android:text="news"
android:id="@+id/newsbtn"
android:layout_marginLeft="8dp"
android:layout_marginRight="6dp"
android:paddingBottom="5dp"
/>
</LinearLayout>
答案 0 :(得分:0)
之前从未遇到过这个问题,但我会明确确定父级中没有填充且子级中没有边距。即:
@Override
public void onMapReady(GoogleMap googleMap) {
Log.d(TAG, "onMapReady() method called");
mMap = googleMap;
mMap.getUiSettings().setZoomControlsEnabled(true);
if (checkPermission())
mMap.setMyLocationEnabled(true);
mMap.setOnMyLocationButtonClickListener(this);
mMap.setOnMyLocationClickListener(this);
View locationButton = ((View) mapFragment.getView().findViewById(Integer.parseInt("1")).
getParent()).findViewById(Integer.parseInt("2"));
RelativeLayout.LayoutParams rlp = (RelativeLayout.LayoutParams) locationButton.getLayoutParams();
rlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
rlp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
if (locationGlobal != null) updateMarker(locationGlobal);
}
答案 1 :(得分:0)
您可以删除EditText的背景标记,如果有效则回复我吗? 还提供完整的布局文件以获得精确的解决方案。
答案 2 :(得分:0)
我认为问题可能在你最顶层的LinearLayout视图中。
尝试删除这些行:
android:layout_marginTop="0dp"
android:paddingTop="6dp"
android:paddingBottom="5dp"
android:layout_margin="3dp"
并添加这些行以确保根本没有填充和边距:
android:padding="0dp"
android:layout_margin="0dp"
如果它确实解决了问题,您可以继续阅读有关填充和边距here的更多信息。
如果没有,我会怀疑你的TextInputLayout因内部EditText要求它同时位于顶部和中心而感到困惑。删除&#34;中心&#34;部分(例如从您的EditText中删除此 - android:layout_centerInParent="true"
并检查它是否解决了您的问题:)