在$ db2 grant dbadm on database to user dbuser
DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0552N "TSSADM" does not have the privilege to perform operation "GRANT".
SQLSTATE=42502
内,我正在创建新的RecyclerView
,然后设置其布局参数,如下所示:
CustomView
现在我观察到@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
CustomView customView= new CustomView(parent.getContext() /*, ...otherCustomArgs*/);
customView.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT
));
// ...
}
有很多构造函数-LinearLayout
的扩展类。
CustomView
现在显然有一种在实例化时将宽度/高度传递给这些构造函数的标准方法,这就是将XML布局中的/**
{@link LinearLayout(Context)}
{@link LinearLayout(Context, AttributeSet)}
{@link LinearLayout(Context, AttributeSet, int)}
{@link LinearLayout(Context, AttributeSet, int, int)}
*/
传递到类中的方式。
为了保持标准,我想在自定义构造函数中使用其中之一,即:
layout_width/height
我猜想,因为此自定义构造函数实际上不会在XML布局中使用,因此不必遵循标准构造,但是默认构造函数对XML CustomView extends LinearLayout {
CustomView(Context context, LayoutArgs layoutArgs, Object... otherCustomArgs){
this(context, ...layoutArgs);
// Use otherCustomArgs
}
}
所做的其他事情可能是{{1 }}不会。
答案 0 :(得分:1)
根据the Layouts, Attributes, and You blog post:
要逐个子地更改内容,布局使用
layout_
属性形式的另一种机制,将其添加到子视图中。这些属性是不同的,因为layout_
属性是父ViewGroup的说明,而不是View本身的说明。
因此,您的CustomView不会将布局参数传递给您-它们会传递给您将CustomView添加到的任何布局。然后,父级布局将使用这些值来measure and layout您的CustomView。