HOME技術AndroidAndroidアプリ:ボタンやEditTextを角丸にする

Androidアプリ:ボタンやEditTextを角丸にする

Android StudioでボタンやEditTextを配置して、角丸にします。
角丸や色などを指定する場合には、それ専用のxmlファイルを別途用意し、読み込ませるようにします。

ボタンの背景色と角丸を設定する

まず設定用のxmlファイルを新規に作成します。
「app\res\drawable」上で右クリックして、「New」→「Drawable resource file」を選択します。

「New Resource File」の画面が表示されたら、「File name」の欄にxmlファイル名をつけます。
(ファイル名は半角小文字英数と_のみです。大文字にしようとするとエラーが出ます)
名前を付けてOKを押すと、drawableフォルダ以下にそのファイルが生成されます。
ここではファイル名を「partsdesign」とします。

生成されたpartsdesign.xmlを開き、<selector>~</selector>内に以下のように入力します。

<item>
<shape android:shape=”rectangle”>
<corners
android:topRightRadius=”5dp”
android:topLeftRadius=”5dp”
android:bottomRightRadius=”5dp”
android:bottomLeftRadius=”5dp”
/>
<solid
android:color=”@color/colorPrimary”
/>
</shape>
</item>

<corners … />に書いた内容が角丸の指定です。
topRightRadius…右上の角
topLeftRadius…左上の角
bottomRightRadius…右下の角
bottomLeftRadius…左下の角
個別に大きさを変えることもできます。

<solid android:color=”@color/colorPrimary” />は、背景色の指定です。
これは、「app\res\values\colors.xml」に指定されている「colorPrimary」という設定を読み込んでいます。

レイアウトファイル(activity_main.xml)を編集する

activity_main.xmlを開き、角丸を設定したいコントロールのタグ内に、以下のように書きます。

android:background=”@drawable/partsdesign”

ここでは、ButtonとEditTextの2つに指定しました。

エミュレータを起動すると、以下のように表示されます。

関連記事

Androidアプリ:ClassNotFoundExceptionエラー

Google Play Consoleのクラッシュ報告で、「ClassNotFoundException(ac.loadClass)」というログが表示されていたので、調べました。 恐らくAdmobのS…続きを読む

Androidアプリ:テキストをリスト表示する

Androidアプリで、ListViewを使い、配列に格納したテキストをリスト表示します。 MainActivity.java import android.app.Activity; import …続きを読む

Androidアプリ:Firebaseを利用したAdMobの実装方法

AndroidアプリでFirebaseを利用したAdMobの実装方法を調べました。 なお、FirebaseおよびAdMobには既にユーザ登録済みであることを想定しています。 未登録の場合は先に登録して…続きを読む

Androidアプリ:タイトルバーを消す

Android Studioで、タイトルバーを消す方法です。 通常は、以下のように画面上部にタイトルバーが表示されています。 AndroidManifest.xmlを編集する android:them…続きを読む

Androidアプリ:ボタンのテキストを変える

Androidでボタンのテキストをプログラム上で変える方法です。 MainActivity.java   Button button = findViewById(R.id.button);…続きを読む

Androidアプリ:内部テスト版をリリースする

Androidアプリで完成したものをすぐに公開する前に、内部テスト版としてリリースして動作確認をする方法です。 内部テスト版リリース方法 Google Play Consoleにログインして、「すべて…続きを読む

Androidアプリ:Class ‘Anonymous class derived from OnItemClickListener’…のエラー

Android Studioで開発中に、ListViewを使っていて以下のようなエラーメッセージが出た場合の理由です。 Class ‘Anonymous class derived from OnIt…続きを読む

Androidアプリ:画面をタップしたら文字を入れ替える

画面をタップしたら文字を入れ替えるアプリをつくります。 今回はタッチイベントを取得する方法を調べました。 ここではレイアウト定義ファイルを「activity_main.xml」、 プログラムファイルを…続きを読む

Androidアプリ:ライブラリの更新とエラーの修正

Androidアプリを開発していて、Build.gradle(app)の、dependenciesの項目内でハイライト表示されたり、赤い下線が引かれたりすることがあります。 ハイライトはライブラリを更…続きを読む

Androidアプリ:ボタンの表示/非表示

Androidでボタンの表示/非表示をプログラム上からコントロールします。 MainActivity.java   Button button = findViewById(R.id.but…続きを読む