ボーダーを丸くしたレイアウトを作りたいです。で特定のサイズの半径を適用するにはどうすればよいLinearLayout
ですか?
質問する
158335 次
5 に答える
307
drawable フォルダーに XML ファイルを作成できます。たとえば、shape.xml
でshape.xml
:
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid
android:color="#888888" >
</solid>
<stroke
android:width="2dp"
android:color="#C4CDE0" >
</stroke>
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp" >
</padding>
<corners
android:radius="11dp" >
</corners>
</shape>
タグは特定の<corner>
質問用です。
必要に応じて変更します。
そしてあなたのwhatever_layout_name.xml
:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_margin="5dp"
android:background="@drawable/shape" >
</LinearLayout>
これは、私がアプリで通常行っていることです。
于 2012-04-09T14:20:17.543 に答える
11
レイアウトの背景としてShapeDrawableを使用し、そのcornerRadiusを設定し ます。詳細なチュートリアルについては、このブログを確認してください
于 2012-04-09T13:57:50.650 に答える
0
画像の操作には Glide モジュールを使用してみてください。次のように実装する必要があります。
implementation 'com.github.bumptech.glide:glide:4.12.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'
これがフラグメントでの私のユースケースです。ここで、定数から画像の URL を取得します。次に、角の半径を 16 に設定します。次に、結果の背景を LinearLayout に設定します。
Glide.with(this).load(Constants.FLAT_IMAGE).apply(RequestOptions.bitmapTransform(
RoundedCorners(16)
)).into(object :
CustomTarget<Drawable>() {
override fun onLoadCleared(placeholder: Drawable?) {
super.onLoadStarted(placeholder)
}
override fun onResourceReady(
resource: Drawable,
transition: Transition<in Drawable>?
) {
binding.llPromoDreamFlatImage.background = resource
}
})
このようにして、背景画像を画像または LinearLayout の丸みを帯びた色として設定できます。これが私の例です:
<LinearLayout
android:id="@+id/llPromoDreamFlatImage"
android:layout_width="match_parent"
android:layout_height="420dp"
android:layout_marginTop="35dp"
android:layout_gravity="center"
android:gravity="center"
>
于 2021-07-16T09:33:15.613 に答える