有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

我的进度条有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) 个答案