android - java.lang.NoClassDefFoundError,安卓
问题描述
昨天好的,今天就不行了,下边的代码报错
WxShareMenu popup = new WxShareMenu(AboutActivity.this);popup.showPopupWindow();
java.lang.NoClassDefFoundError: org.pointstone.cugapp.view.WxShareMenu at org.pointstone.cugapp.activities.AboutActivity$5.onClick(AboutActivity.java:188) at android.view.View.performClick(View.java) at android.view.View$PerformClick.run(View.java) at android.os.Handler.handleCallback(Handler.java) at android.os.Handler.dispatchMessage(Handler.java) at android.os.Looper.loop(Looper.java) at android.app.ActivityThread.main(ActivityThread.java) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java) at dalvik.system.NativeStart.main(Native Method)
下边是相关代码,我又新建了两个新的,把代码复制过去还是不行WxShareMenu.java
package org.pointstone.cugapp.view;import android.app.Activity;import android.view.LayoutInflater;import android.view.View;import android.view.animation.Animation;import org.pointstone.cugapp.R;import razerdp.basepopup.BasePopupWindow;/** * Created by Administrator on 2017/3/2. */public class WxShareMenu extends BasePopupWindow implements View.OnClickListener { private View popupView; public WxShareMenu(Activity context) {super(context);bindEvent(); } @Override protected Animation initShowAnimation() {return getTranslateAnimation(250 * 2, 0, 300); } @Override public View getClickToDismissView() {return popupView.findViewById(R.id.click_to_dismiss); } @Override public View onCreatePopupView() {popupView = LayoutInflater.from(getContext()).inflate(R.layout.wx_share_menu, null);return popupView; } @Override public View initAnimaView() {return popupView.findViewById(R.id.popup_anima); } private void bindEvent() {if (popupView != null) { popupView.findViewById(R.id.tx_1).setOnClickListener(this); popupView.findViewById(R.id.tx_2).setOnClickListener(this); popupView.findViewById(R.id.tx_3).setOnClickListener(this);} } @Override public void onClick(View v) {switch (v.getId()) { case R.id.tx_1:break; case R.id.tx_2:break; case R.id.tx_3:break; default:break;} }}
wx_share_menu.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'> <RelativeLayoutandroid: android:layout_width='match_parent'android:layout_height='match_parent'android:background='@color/share_popup_bg'><LinearLayout android: android:layout_width='match_parent' android:layout_height='wrap_content' android:orientation='vertical' android:layout_alignParentBottom='true' android:background='@android:color/white' > <TextViewandroid: android:layout_width='match_parent'android:layout_height='60dp'android:gravity='center'android:text='分享到朋友圈'/> <View /> <TextViewandroid: android:layout_width='match_parent'android:layout_height='60dp'android:gravity='center'android:text='分享给微信好友'/> <View /> <TextViewandroid: android:layout_width='match_parent'android:layout_height='60dp'android:gravity='center'android:text='取消'/></LinearLayout> </RelativeLayout></RelativeLayout>
defaultConfig {applicationId 'org.pointstone.cugapp'minSdkVersion 16targetSdkVersion 24versionCode 10versionName '1.0.1'testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner'multiDexEnabled true }
求解决,我要崩溃
问题解答
回答1:函数超过 65536 个了,http://www.jianshu.com/p/2450...
回答2:其实我觉得,你clear下项目一般都会好,你的Popupwindow又不是一般的写在xml中需要完整包名,我没发现你的写法有问题,倒是Android Studio经常不把你写的代码打包到apk中,开发中经常遇到,一半Clear 或 Restart(Pc/Android Studio)可解决.
这个错误一般是由于运行环境找不到类或者定义的类创建失败所造成,一般控件中出现这个错误可能是由于该控件中某些所需的资源无法找到的原因,如attrs.xml,drawables等等,所以你需要确认你导入的引用的library的完整性,是仅仅只是依赖了一个jar还是一个aar(一个完整的andorid工程库),若只是依赖jar的话,可能需要重新修改下依赖.
相关文章:
1. android - 安卓做前端,PHP做后台服务器 有什么需要注意的?2. javascript - 混合开发,安卓和苹果的区别3. css - 安卓内嵌H5,padding边距上下不一致4. android - 安卓机上 html input 改这个小水滴颜色的问题5. android - 请教安卓的一个界面实现,图片请看问题6. java - 新手做一个安卓视频播放器,想实现一个进度条,按钮那种在视频下方悬浮的功能,不知道思路!7. android - 安卓布局问题8. javascript - h5页面如何安卓app交互9. android - 安卓app实现与蓝牙模块的数据通信,当蓝牙模块离开有效距离时与手机app断开连接,app想在断开连接时有所提示,要怎么实现10. html - hotcss.js 使用过程中 border:.02133rem solid #000;在安卓不显示,iphone正常
