2

学校の課題に合わせてチャットアプリを作っています。

私の意見では、AndroidのデフォルトのEditTextは見栄えがよくありません。AndroidのChromeのURLボックスのように見せたい:

ChromeのEditText

このデザインがCatchNotes(美しく見える)などの他のアプリケーションで使用されているのを見たことがあります。

では、EditTextを変更するための組み込みオプションはありますか、それとも最初から描画する必要がありますか?誰でもリンクを張ることができますか?グーグルしてみましたが、正しい用語がわかりません

ありがとう

4

3 に答える 3

3

ここに画像の説明を入力してくださいこれは、edittextbackgroundtransparentを実行することで実現できます。

したがって、画像をレイアウトの背景に配置し、この中に編集テキストを入れます。そしてedittextをtransperntにします。

またはこれを試してください

<EditText
        android:id="@+id/tracknumbertxt"
        android:layout_width="fill_parent"
        android:layout_height="30dp"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_toLeftOf="@+id/info"
        android:background="@drawable/enter_tracking_no"
        android:ems="10"
        android:hint="Enter Tracking No."
        android:paddingLeft="30dp"
        android:inputType="text"
        android:imeOptions="actionGo"

        android:singleLine="true" >

    </EditText>

ここで私は左にパディングを割り当てました。

そのため、設計に従って、paddingLeftの代わりにpaddingRightプロパティを設定する必要があります。

于 2012-11-01T12:29:24.713 に答える
2

以下のレイアウトスタイルを盲目的に使用します。レイアウトの準備が整います。ボタンの背景を置き換えるだけで完了です。

<?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:orientation="horizontal" 
    android:background="@android:color/darker_gray"
    android:padding="5dip"
    android:gravity="center">
    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_weight="1"
        android:background="@android:color/white"
        android:gravity="center"
        android:padding="5dip">
        <EditText android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:hint="Type URL"
            android:layout_weight="1"
            android:background="@android:color/transparent"/>
        <Button android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Refresh"/>
    </LinearLayout>
    <Button android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn1"/>
    <Button android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn2"/>
</LinearLayout>
于 2012-11-01T12:37:46.680 に答える
2

そのように見せることができるSDKのネイティブなものはありません。(OSの特定のバージョンのみに使用を制限している場合は、そのバージョンのデフォルトのスタイルを使用できますが、実際には実行可能なソリューションではありません)

EditTextの背景として使用する画像を作成して、希望どおりの外観にする必要があります。テキストボックスなどの最適なオプションは、9パッチの 画像を使用するか、レイヤーリスト XMLファイルを作成してデザインをそのように記述することです。いずれにせよ、ファイルはプロジェクトのres / drawableフォルダーに配置され、次のように背景として設定します。

<EditText android:id="@+id/et_whatever"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    background="@drawable/YOUR_FILE_NAME" />
于 2012-11-01T12:41:41.640 に答える