SquareLinearLayout(高等于宽的自适应LinearLayout)

代码片段(3)[全屏查看所有代码]

1.[代码]正方形public class SquareLinearLayout extends LinearLayout {public SquareLinearLayout(Context context) {super(context);}public SquareLinearLayout(Context context, AttributeSet attrs) {super(context, attrs);}@Overridepublic void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {super.onMeasure(widthMeasureSpec, widthMeasureSpec);}}

2.[代码]自定义高宽比public class SquareLinearLayout extends LinearLayout {public SquareLinearLayout(Context context) {super(context);}public SquareLinearLayout(Context context, AttributeSet attrs) {super(context, attrs);}@Overridepublic void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {int width = MeasureSpec.getSize(widthMeasureSpec);int height = Math.round(width*0.9f);int mode = MeasureSpec.getMode(widthMeasureSpec);super.onMeasure(MeasureSpec.makeMeasureSpec(width, mode), MeasureSpec.makeMeasureSpec(height, mode));}}

3.[代码]girdview_item.xml<?xml version=”1.0″ encoding=”utf-8″?><com.custom.SquareLinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”android:layout_width=”match_parent”android:layout_height=”match_parent”android:gravity=”center”android:orientation=”vertical” ><LinearLayoutandroid:layout_width=”fill_parent”android:layout_height=”fill_parent”android:gravity=”center”android:orientation=”vertical” ><TextViewandroid:id=”@+id/name”android:layout_width=”wrap_content”android:layout_height=”wrap_content”android:textColor=”@android:color/black” /><ImageViewandroid:id=”@+id/icon”android:layout_width=”wrap_content”android:layout_height=”wrap_content” /></LinearLayout></com.custom.SquareLinearLayout>

,觉得自己做的到和不做的到,其实只在一念之间

SquareLinearLayout(高等于宽的自适应LinearLayout)

相关文章:

你感兴趣的文章:

标签云: