3

私のAndroidプロジェクトでは、デフォルトでcaps lockが有効になっているpersonnameタイプのテキストフィールドが必要ですが、このコードは機能していません。

<EditText
    android:id="@+id/txt_user_name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:ems="10"
    android:inputType="textPersonName" >

    <requestFocus />
</EditText>

これがうまくいかないのはなぜですか?

編集:ファイルが何であるかを示す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="wrap_content"
    android:orientation="vertical" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="@string/t_registration"
        android:textSize="25dp"
        android:textStyle="bold"
        android:paddingTop="7dp" 
        android:paddingBottom="7dp"/>


    <TableLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:stretchColumns="1" >
        <TableRow
            android:id="@+id/tableRow0"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_user_name"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="User Name * :   " />


            <EditText
                android:id="@+id/txt_user_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:ems="10"
                android:inputType="textPersonName" >

                <requestFocus />
            </EditText>



        </TableRow>
        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_first_name"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="First Name * :   " />

            <EditText
                android:id="@+id/txt_first_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:drawable/editbox_background"
                android:inputType="textPersonName" >
            </EditText>
        </TableRow>

        <TableRow
            android:id="@+id/tableRow2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_last_name"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="Last Name * :   " />

            <EditText
                android:id="@+id/txt_last_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:drawable/editbox_background"
                android:inputType="textPersonName" >
            </EditText>
        </TableRow>

        <TableRow
            android:id="@+id/tableRow3"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_email_address"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="Email Address:   " />

            <EditText
                android:id="@+id/txt_email_address"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:drawable/editbox_background"
                android:inputType="textEmailAddress" >

            </EditText>
        </TableRow>

        <TableRow
            android:id="@+id/tableRow4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_school_id"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="school_id * :   " />

            <EditText
                android:id="@+id/txt_school_id"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:drawable/editbox_background"
                android:inputType="text" >
            </EditText>
        </TableRow>

        <TableRow
            android:id="@+id/tableRow5"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_password"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="Password * :   " />

            <EditText
                android:id="@+id/txt_password"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:drawable/editbox_background"
                android:inputType="textPassword" >

            </EditText>
        </TableRow>

        <TableRow
            android:id="@+id/tableRow6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_confirm_password"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0.0"
                android:text="Confirm password * :   " />

            <EditText
                android:id="@+id/txt_password2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:drawable/editbox_background"
                android:inputType="textPassword" >"
            </EditText>
        </TableRow>

        <TableRow
            android:id="@+id/tableRow7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/lbl_image_select"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical"
                android:layout_weight="0.0"
                android:text="Image Select * :   " />

            <Button
                android:id="@+id/b_image_browse"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical"
                android:layout_margin="1dp"
                android:padding="10dp"
                android:text="@string/b_image_browse"
                android:textSize="15dp"
                android:onClick="b_image_browse_action" />

        </TableRow>           

    </TableLayout>

    <EditText
        android:id="@+id/txt_image_name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:ems="10" 
        android:hint="Image File Path"
        android:inputType="text" >
    </EditText>


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


       <Button
           android:id="@+id/b_reg_Cancel"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_alignParentLeft="true"
           android:layout_alignParentTop="true"
           android:layout_margin="10dp"
           android:layout_marginLeft="30dp"
           android:padding="10dp"
           android:text="@string/b_reg_Cancel"
           android:textSize="15dp"
           android:onClick="b_reg_Cancel_action" />

        <Button
            android:id="@+id/b_reg_Submit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_margin="10dp"
            android:layout_marginRight="100dp"
            android:padding="10dp"
            android:text="@string/b_reg_Submit"
            android:textSize="15dp" 
            android:onClick="b_reg_Submit_action"/>

    </RelativeLayout>



</LinearLayout>
4

4 に答える 4

15

使用する

android:inputType="textPersonName|textCapWords"

だけ"textPersonName"では不十分なので、名前の最初の文字は大文字になります。

同様に、郵送先住所も次のようになります。

android:inputType="textPostalAddress|textCapSentences"
于 2014-08-14T08:30:24.003 に答える
1

これを大文字の単語に使用しましたが、提案はありません

android:inputType="textCapWords|textNoSuggestions"

例えばTom Hanks

于 2015-08-22T14:01:46.660 に答える
1

通常どおり人名を表示しようとする場合は、次のようにしてくださいandroid:capitalize="words"。すべて大文字にしたい場合は、Mr.LuxuryMode が言ったように変更wordscharactersたり、実行したりできます。

編集:

フィールドを削除する必要がありandroid:inputType="textPersonName"ます。それが動作します!

于 2012-07-26T02:17:15.173 に答える
0

すべて大文字が必要な場合は、使用してくださいandroid:textAllCaps="true"

于 2012-07-26T02:07:45.200 に答える