我正在使用进度条(圆圈),而我的数据是从启动画面中的数据库加载的。我在xml中使用了标签中的进度条...但是在活动中它没有旋转...建议帮助......它有什么问题?
xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imgLogo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/splash" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/loading"
android:layout_centerHorizontal="true"
android:gravity="center_horizontal"
android:text="Loading data..."
android:visibility="visible"
android:textAppearance="?android:attr/textAppearanceLarge" />
<ProgressBar
android:id="@+id/loading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="92dp"
android:gravity="center"
android:indeterminateDrawable="@drawable/custom_bar" />
</RelativeLayout>
Java:
public class SplashScreen extends Activity {
static String DATABASE_NAME = "ItemDB";
static DBACESS mDbAccess = null;
public static SQLiteDatabase mDB;
public static ListItems objitem;
private static int SPLASH_TIME_OUT = 100;
private PackageManager packageManager = null;
static DataEntryClass data = new DataEntryClass();
static List<ItemClass> item_table;
ProgressBar progressBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_splash);
progressBar = (ProgressBar) findViewById(R.id.loading);
// ////////////////////////
/////////////////////////
CheckConnectionState(getApplicationContext());
packageManager = getPackageManager();
if (objitem == null)
objitem = new ListItems(getApplicationContext(), mDB);
if (!objitem.ItemsExist(mDB))
try {
data.addItems(getApplicationContext());
} catch (Exception e) {
// TODO: handle exception
}
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
data.getNewUpdates(getApplicationContext(), packageManager);
item_table = new ArrayList<ItemClass>();
item_table = objitem.LoadItems(mDB);
Intent i = new Intent(SplashScreen.this, TabActivity.class);
startActivity(i);
// close this activity
finish();
}
}, SPLASH_TIME_OUT);
}
public static void CheckConnectionState(Context ct) {
try {
if (mDB == null || !mDB.isOpen()) {
DBACESS.DATABASE_NAME = DATABASE_NAME;
mDbAccess = new DBACESS(ct);
mDB = mDbAccess.getReadableDatabase();
}
} catch (Exception e) {
}
}
}
custom_bar.xml:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360"
android:repeatCount="infinite"
android:drawable="@drawable/menu" >
</rotate>
答案 0 :(得分:5)
对于旋转图像,您可以在drawable文件夹
中使用custom_progress_bar.xml<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360"
android:drawable="@drawable/gif_loader_img1" >
</rotate>
将drawable设置为进度条
<ProgressBar
android:id="@+id/progressBar1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:indeterminate="true"
android:indeterminateDrawable="@drawable/custom_progress_bar"/>
答案 1 :(得分:1)
<ProgressBar
android:indeterminateDrawable="@drawable/loader4_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:layout_marginTop="5dp"
/>
创建一个可绘制的xml loader4_progress
<?xml version="1.0" encoding="utf-8"?>
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/spinner"
android:duration="1"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="1080"
/>
有关详细信息,请查看此信息 http://custom-android-dn.blogspot.in/2013/01/how-to-create-custom-progress-bar-and.html How to Customize a Progress Bar In Android
答案 2 :(得分:1)
这个问题很老,但是还有另一个考虑。为开发人员设备查找错误非常容易,而且非常困难。
只需确保开发人员选项中的动画处于有效状态即可。激活以下选项:
{{1}}