MapActivity上的EditText中的不可见文本

时间:2012-06-04 02:41:15

标签: android android-mapview android-edittext

我正在开发一个Android应用程序的问题。

屏幕顶部有Activity EditText,地图占据了剩余的空间。问题是EditText没有显示我放入的任何文字。您可以关注EditText并输入更多文字,甚至可以选择应用放在EditText中的文字并进行复制。将其粘贴到另一个应用程序中时,您可以看到它是EditText中的文本。所以我知道文本在那里,但我真的不明白为什么文本没有显示。

我尝试更改EditText的背景颜色(有效,但文字仍然不可见)并更改文字颜色(没有任何改动)。这是我的XML文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:orientation="vertical" >

<EditText
    android:id="@+id/status"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/findingSatellites"
    android:inputType="text"
    android:ems="10" />

    <com.google.android.maps.MapView
        android:id="@+id/bigMap"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:apiKey="someapikey"
        android:clickable="true" >
    </com.google.android.maps.MapView>

</LinearLayout>

地图显示正确。你能帮助我吗?

更新
我试图从XML文件(和代码)中注释掉地图,现在呈现EditText内的文本。我还试图注释掉我的MapOverlay,但现在仍然显示文本。我尝试使用EditText替换TextView并获得相同的结果。当Activity中有地图时,怎么没有文字呈现?

UPDATE2:
我根据你的建议修改了我的xml。这就是我现在所拥有的:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:focusable="true"
    android:focusableInTouchMode="true" >

    <RelativeLayout 
        android:id="@+id/statusLayout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" >

        <EditText
            android:id="@+id/status"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:ems="10"
            android:inputType="text"
            android:text="@string/findingSatellites" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/mapLayout"
        android:layout_below="@id/statusLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true" >

        <com.google.android.maps.MapView
            android:id="@+id/bigMap"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:apiKey="0ZGxti1I-qNSsMmsOCqnbPsnNG7Sl4U2aHvDc-Q"
            android:clickable="true" />

    </RelativeLayout>

</RelativeLayout>

它仍然不会呈现任何文字。

以下是正在发生的事情的图片:

The EditText with some of the invisible text marked

3 个答案:

答案 0 :(得分:1)

我发现了这个问题。 android上的颜色用整数表示为ARGB,我来自只使用RGB的HTML / CSS背景。这使我将textcolor的alphachannel设置为0,这意味着完全透明。我真的很蠢!谢谢你的帮助。

答案 1 :(得分:0)

我会尝试使用RelativeLayoutMapView置于EditText

之下
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:focusable="true"
    android:focusableInTouchMode="true" >

    <EditText
        android:id="@+id/status"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:ems="10"
        android:inputType="text"
        android:text="@string/findingSatellites" />

    <com.google.android.maps.MapView
        android:id="@+id/bigMap"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:apiKey="someapikey"
        android:layout_below="@id/status"
        android:clickable="true" >
    </com.google.android.maps.MapView>

</RelativeLayout>

答案 2 :(得分:0)

editText放在另一个布局中。