查看 jfeinstein10 的滑动菜单库中的一个示例
在其中,在BirdActivity.java中,您将看到ActionBar
2 秒后如何显示和隐藏。您自然必须自己调整代码。但这应该让你开始:
第 53 - 58 行的代码摘录:
imageView.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
getSupportActionBar().show();
hideActionBarDelayed(mHandler);
}
});
hideActionBarDelayed()
从第80 - 86 号线出发:
private void hideActionBarDelayed(Handler handler) {
handler.postDelayed(new Runnable() {
public void run() {
getSupportActionBar().hide();
}
}, 2000);
}
更新
由于缺少代码,大部分问题已被假设。仅仅因为缺少来自 OP 的数据,这可能是错误的。话虽如此,如果整理出“只有创建视图层次结构的原始线程才能触及其视图”。问题将解决它,也许这可能会为您解决:
Runnable run = new Runnable() {
@Override
public void run() {
// RUN YOUR CODE TO HIDE / SHOW THE ACTIONBAR HERE
}
}; YOUR_ACTIVITY.this.runOnUiThread(run); // REPLACE WITH getActivity().runOnUiThread(run); IF THIS IS A FRAGMENT
注意:在示例中,有问题的活动使用ActionBarSherlock并扩展SherlockActivity
,因此使用getSupportActionBar()
. 如果您不使用 ABS,则必须使用getActionBar()
而不是前者。