使用SwipeStack

时间:2017-05-25 13:43:53

标签: android android-context

我还在学习android并尝试使用SwipeStack库实现swipestack。当使用GitHub上显示的代码时,getLayoutInflater以及getActivity都无法解析。在网上阅读,似乎我需要声明一个上下文,但我不确定如何做到这一点。任何帮助都会很棒!我的代码如下:

    import ...


public class RateActivity extends AppCompatActivity {

}

public class SwipeStackAdapter extends BaseAdapter {

private List<String> mData;

public SwipeStackAdapter(List<String> data) {
    this.mData = data;
}

@Override
public int getCount() {
    return mData.size();
}

@Override
public String getItem(int position) {
    return mData.get(position);
}

@Override
public long getItemId(int position) {
    return position;
}

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
    convertView = getLayoutInflater().inflate(R.layout.card, parent, false);
    TextView textViewCard = (TextView) convertView.findViewById(R.id.textViewCard);
    textViewCard.setText(mData.get(position));

    return convertView;
}

}

1 个答案:

答案 0 :(得分:0)

如果从一个活动调用SwipeStackAdapter,请定义它以便它接收一个Context对象并调用它在相应的字段中传递“this”。否则,您可以将getActivity()或getApplicationContext()传递给此字段。然后在适配器中创建一个名为context的全局变量,并将您接收的上下文设置为此变量。

当你需要调用getLayoutInflater时,只需使用 context.getLayoutInflater();