-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
这是我看到最好的自定义教程,没有之一,非常感谢 #77
Comments
@GcsSloop 我想问一个问题,如果希望组合几个 TextView 形成一个新的 view,这种能用自定义 view 么? |
可以的,用自定义 ViewGroup。 |
自定义 viewgroup,配合使用 res/layout/xxx.xml(在这里写布局,比如用 LinearLayout 套两个 TextView) 是么? |
@musicode 是的,自定义View的时候可以引入布局的。 |
可以的,然后在自定义的Group中填充这个布局就行了。例如: public class TitleBar extends ConstraintLayout {
private View mGroup;
public TitleBar(Context context) {
this(context, null);
}
public TitleBar(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public TitleBar(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initViews(context);
}
private void initViews(Context context) {
// 填充布局
mGroup = LayoutInflater.from(context).inflate(R.layout.item_titlebar, this);
}
} |
谢谢 |
@GcsSloop 自定义 view 这个系列似乎缺少关于 ViewGroup 的 |
因为这个系列目前只更新了大约一半的内容,因为刚工作,时间不足暂时停更了一年,最近可能会恢复更新。 |
你才刚工作啊,厉害厉害! |
请教一个问题,通常我们会在 app:maxWidth="动态算出的宽度" |
我可能没有理解你说的这个内容的应用场景。 |
设置了 marginRight 之后,自定义 view 取 最大可用宽度 就能取到红框的宽度了吧 |
如果上层View是按照规范来的,是这样的。 |
好的,感谢指点~ |
请教一个关于获取宽高的问题,布局如下: <?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ff0000">
<android.support.v7.widget.RecyclerView
android:id="@+id/gridView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:overScrollMode="never"/>
</FrameLayout> 我的需求是获取 frame layout 的宽高,从而计算 grid 每个格子的大小,但是按上面这种布局, 如果我把布局改成下面这样,就能正常获取 frame layout 的尺寸 <?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ff0000">
<!-- 在这加了一个 match_parent 的空视图 ->
<View
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:overScrollMode="never"/>
</FrameLayout> 我的问题如下:
感谢 |
这是我看到最好的自定义教程,没有之一,非常感谢
The text was updated successfully, but these errors were encountered: