小编cal*_*ops的帖子

来自RecyclerView的Android ViewHolder参数#onCreateViewHolder不同

这是我遵循的示例代码.

以下代码是onCreateViewHolder示例代码中的一部分:

@Override
public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
                                               int viewType) {
    // create a new view
    View v = LayoutInflater.from(parent.getContext())
                           .inflate(R.layout.my_text_view, parent, false);
    // set the view's size, margins, paddings and layout parameters
    ...
    ViewHolder vh = new ViewHolder(v);
    return vh;
}
Run Code Online (Sandbox Code Playgroud)

这是ViewHolder的一部分:

public static class ViewHolder extends RecyclerView.ViewHolder {
    public TextView mTextView;
    public ViewHolder(TextView v) {
        super(v);
        mTextView = v;
    }
}
Run Code Online (Sandbox Code Playgroud)

显然,参数TextView v是错误的.

然后我在这个onCreateViewHolder方法中扮演一个技巧:

    ...
    TextView textView = (TextView) v.findViewById(R.id.tv_test);
    ViewHolder …
Run Code Online (Sandbox Code Playgroud)

android

5
推荐指数
1
解决办法
4479
查看次数

while(scanf("%d",&n)){...}在Linux上按Ctrl + D时不退出

如果使用此代码读取int数字,当我按Ctrl + D时,该程序将不会退出.

while( scanf("%d", &n) ) { ... }
Run Code Online (Sandbox Code Playgroud)

但如果我使用它,它将退出.

while( scanf("%d", &n) == 1 ) { ... }
Run Code Online (Sandbox Code Playgroud)

OS I测试此代码的是Linux,编译器是g ++ 7.3.1.

c c++ scanf

1
推荐指数
1
解决办法
74
查看次数

标签 统计

android ×1

c ×1

c++ ×1

scanf ×1