我的进度条有java问题安卓 studio没有进展
我试着填充一个叫做“金属件”的表格,我使用了一个确定的进度条,这样它在填充表格的过程中会继续前进。但问题是我的进度对话框没有进展。这是我的密码:
metalPieces.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MyApplication myApp = ((MyApplication)getApplicationContext());
if(!myApp.getMetalPiecesTablePopulated()) {
myApp.setMetalPiecesTablePopulated(true);
progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setMax(653);
progressDialog.setMessage("Loading....");
progressDialog.setTitle("Populating metal pieces table");
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.show();
Thread thread = new Thread() {
@Override
public void run() {
try {
Integer incrementValue = 1;
Looper.prepare();
MyHandler handle = new MyHandler();
Looper.loop();
MetalPiece metalPiece;
AssetManager am = getAssets();
InputStream is = null;
try {
is = am.open("catalogue.xlsx");
} catch (IOException e) {
e.printStackTrace();
}
Workbook wb = null;
try {
wb = Workbook.getWorkbook(is);
} catch (IOException e) {
e.printStackTrace();
}
Sheet sheet = wb.getSheet(0);
for(int row = 1 ; row <= 653; row++){
String typeProfile = sheet.getCell(0, row).toString();
String poids = sheet.getCell(1, row).toString();
metalPiece = new MetalPiece();
metalPiece.setType(typeProfile);
metalPiece.setFamily("Profile");
metalPiece.setPoids(Float.parseFloat(poids));
metalPiece.setUnit("Mètre");
adapter.saveMetalPiece(metalPiece);
handle.sendEmptyMessage(incrementValue);
}
progressDialog.dismiss();
intent = new Intent(MainActivity.this, MetalPieces.class);
MainActivity.this.startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
}
};
thread.start();
}
else {
intent = new Intent(MainActivity.this, MetalPieces.class);
MainActivity.this.startActivity(intent);
}
}
});
我也在使用这个类:
class MyHandler extends Handler {
@Override
public void handleMessage(@NonNull Message msg){
super.handleMessage(msg);
progressDialog.incrementProgressBy(msg.what);
}
}
当我点击按钮进入金属件列表时,出现以下错误:
03/24 14:38:10: Launching 'app' on No Devices. Install successfully finished in 43 s 535 ms. $ adb shell am start -n "com.example.gestiondevis/com.example.gestiondevis.MainActivity" -a 安卓.intent.action.MAIN -c 安卓.intent.category.LAUNCHER Connected to process 2670 on device 'emulator-5554'. Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page. I/art: Not late-enabling -Xcheck:jni (already on) W/art: Unexpected CPU variant for X86 using defaults: x86 W/System: ClassLoader referenced unknown path: /data/app/com.example.gestiondevis-2/lib/x86 W/art: Before Android 4.1, method 安卓.graphics.PorterDuffColorFilter 安卓x.vectordrawable.graphics.drawable.VectorDrawableCompat.updateTintFilter(安卓.graphics.PorterDuffColorFilter, 安卓.content.res.ColorStateList, 安卓.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in 安卓.graphics.drawable.Drawable I/art: Rejecting re-init on previously-failed class java.lang.Class<安卓x.core.view.ViewCompat$2>: java.lang.NoClassDefFoundError: Failed resolution of: L安卓/view/View$OnUnhandledKeyEventListener; at void 安卓x.core.view.ViewCompat.setOnApplyWindowInsetsListener(安卓.view.View, 安卓x.core.view.OnApplyWindowInsetsListener) (ViewCompat.java:2463) at 安卓.view.ViewGroup 安卓x.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:938) at void 安卓x.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:806) at void 安卓x.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:693) at void 安卓x.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:170) at void com.example.gestiondevis.MainActivity.onCreate(安卓.os.Bundle) (MainActivity.java:43) at void 安卓.app.Activity.performCreate(安卓.os.Bundle) (Activity.java:6679) at void 安卓.app.Instrumentation.callActivityOnCreate(安卓.app.Activity, 安卓.os.Bundle) (Instrumentation.java:1118) at 安卓.app.Activity 安卓.app.ActivityThread.performLaunchActivity(安卓.app.ActivityThread$ActivityClientRecord, 安卓.content.Intent) (ActivityThread.java:2618) at void 安卓.app.ActivityThread.handleLaunchActivity(安卓.app.ActivityThread$ActivityClientRecord, 安卓.content.Intent, java.lang.String) (ActivityThread.java:2726) at void 安卓.app.ActivityThread.-wrap12(安卓.app.ActivityThread, 安卓.app.ActivityThread$ActivityClientRecord, 安卓.content.Intent, java.lang.String) (ActivityThread.java:-1) at void 安卓.app.ActivityThread$H.handleMessage(安卓.os.Message) (ActivityThread.java:1477) at void 安卓.os.Handler.dispatchMessage(安卓.os.Message) (Handler.java:102) at void 安卓.os.Looper.loop() (Looper.java:154) at void 安卓.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6119) at java.lang.Object java.lang.reflect.Method.invoke!(java.lang.Object, java.lang.Object[]) (Method.java:-2) at void com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run() (ZygoteInit.java:886) at void com.安卓.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:776) Caused by: java.lang.ClassNotFoundException: Didn't find class "安卓.view.View$OnUnhandledKeyEventListener" on path: DexPathList[[zip file "/data/app/com.example.gestiondevis-2/base.apk"],nativeLibraryDirectories=[/data/app/com.example.gestiondevis-2/lib/x86, /system/lib, /vendor/lib]] at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:56) at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:380) at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312) at void 安卓x.core.view.ViewCompat.setOnApplyWindowInsetsListener(安卓.view.View, 安卓x.core.view.OnApplyWindowInsetsListener) (ViewCompat.java:2463) at 安卓.view.ViewGroup 安卓x.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:938) at void 安卓x.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:806) at void 安卓x.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:693) at void 安卓x.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:170) at void com.example.gestiondevis.MainActivity.onCreate(安卓.os.Bundle) (MainActivity.java:43) at void 安卓.app.Activity.performCreate(安卓.os.Bundle) (Activity.java:6679) at void 安卓.app.Instrumentation.callActivityOnCreate(安卓.app.Activity, 安卓.os.Bundle) (Instrumentation.java:1118) at 安卓.app.Activity 安卓.app.ActivityThread.performLaunchActivity(安卓.app.ActivityThread$ActivityClientRecord, 安卓.content.Intent) (ActivityThread.java:2618) at void 安卓.app.ActivityThread.handleLaunchActivity(安卓.app.ActivityThread$ActivityClientRecord, 安卓.content.Intent, java.lang.String) (ActivityThread.java:2726) at void 安卓.app.ActivityThread.-wrap12(安卓.app.ActivityThread, 安卓.app.ActivityThread$ActivityClientRecord, 安卓.content.Intent, java.lang.String) (ActivityThread.java:-1) at void 安卓.app.ActivityThread$H.handleMessage(安卓.os.Message) (ActivityThread.java:1477) at void 安卓.os.Handler.dispatchMessage(安卓.os.Message) (Handler.java:102) at void 安卓.os.Looper.loop() (Looper.java:154) at void 安卓.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6119) at java.lang.Object java.lang.reflect.Method.invoke!(java.lang.Object, java.lang.Object[]) (Method.java:-2) at void com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run() (ZygoteInit.java:886) at void com.安卓.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:776) D/: HostConnection::get() New Host Connection established 0x99db1240, tid 2670 D/: HostConnection::get() New Host Connection established 0x99db1880, tid 2687 I/ViewConfigCompat: Could not find method getScaledScrollFactor() on ViewConfiguration I/OpenGLRenderer: Initialized EGL, version 1.4 D/OpenGLRenderer: Swap behavior 1 W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without... D/OpenGLRenderer: Swap behavior 0 I/Choreographer: Skipped 43 frames! The application may be doing too much work on its main thread. D/EGL_emulation: eglCreateContext: 0x9a0232e0: maj 2 min 0 rcv 2 D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) I/Choreographer: Skipped 275 frames! The application may be doing too much work on its main thread. I/Choreographer: Skipped 79 frames! The application may be doing too much work on its main thread. D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190) D/EGL_emulation: eglMakeCurrent: 0x9a0232e0: ver 2 0 (tinfo 0x99db4190)
你能告诉我,我填这张桌子的时候做错了什么吗
共 (0) 个答案