0
我在操作欄中有一個刷新菜單項,我的主佈局只包含一個按鈕。 ,所以點擊刷新菜單項應該把它變成一個微調,點擊按鈕應該停止旋轉。 我的問題是,當我點擊刷新按鈕時,它開始旋轉,這是正確的,但現在當我旋轉它時,它會自動停止旋轉。Actionbarsherlock方向改變不確定進度條停止旋轉
這是我的活動。
public class MyActivity extends SherlockActivity implements OnClickListener{
View refreshView = null;
com.actionbarsherlock.view.MenuItem refreshItem = null;
Animation rotateClockwise = null;
Button btn = null;
boolean downloadComplete = false;
boolean selected = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
btn = (Button)findViewById(R.id.button1);
btn.setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
getSupportMenuInflater().inflate(R.menu.my_menu, menu);
// Inflate our custom layout.
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
refreshView = (View) inflater.inflate(
R.layout.actionbar_indeterminate_progress, null);
refreshItem = menu.findItem(R.id.menu_refresh);
if (selected){
refreshItem.setActionView(refreshView);
}
return true;
}
@Override
public boolean onOptionsItemSelected(
final com.actionbarsherlock.view.MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_refresh:
runOnUiThread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
// Apply the View to our MenuItem
item.setActionView(refreshView);
}
});
// Refresh the data
//refresh();
selected =true;
break;
}
return true;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
downloadComplete = !downloadComplete;
selected = false;
runOnUiThread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
refreshItem.setActionView(null);
}
});
}
}
這是我RES /佈局/ actionbar_indeterminate_progress.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center">
<ProgressBar android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:layout_gravity="center"
style="?android:attr/indeterminateProgressStyle" />
</FrameLayout>
我RES /佈局/ activity_my.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:padding="@dimen/padding_medium"
android:text="@string/hello_world"
tools:context=".MyActivity" />
</RelativeLayout>
和我RES /菜單/ my_menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_refresh"
android:icon="@drawable/ic_menu_refresh"
android:showAsAction="always"
android:title="Refresh"/>
<item
android:id="@+id/settings"
android:icon="@drawable/ic_menu_refresh"
android:title="Settings">
</item>
</menu>
我試圖避免這種情況,但我想這是唯一的出路。 thanxs – Mrinal 2012-07-19 12:40:07