【发布时间】:2017-11-05 00:06:00
【问题描述】:
我正在尝试从列表视图中清除适配器,但没有任何反应 这是我的代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
search_button = (Button) findViewById(R.id.next_button);
editText = (EditText) findViewById(R.id.edit_text);
emptyTextView = (TextView) findViewById(R.id.empty_view);
bookListView = (ListView) findViewById(R.id.list_view);
// Get a reference to the ConnectivityManager to check state of network connectivity
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
// Get details on the currently active default data network
final NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
search_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (networkInfo != null && networkInfo.isConnected()) {
new GetBook().execute(BOOK_REQUEST_URL);
} else {
//这里需要清除适配器但没有发生
emptyTextView.setText(R.string.NoConnect);
bookListView.setEmptyView(emptyTextView);
bookAdapter.clear();
}
}
【问题讨论】:
-
您的 Adapter 实现是错误的... Fx 您正在从 ArrayAdapter 扩展并覆盖 getCount 但不清楚。常见的错误是在自定义 ArrayAdapter 中再次存储数据,而 ArrayAdapter 已经存储了它。
标签: android arrays listview adapter android-adapter