昨天好的,今天就不行了,下边的代码报错
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">
<RelativeLayout
android:id="@+id/click_to_dismiss"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/share_popup_bg"
>
<LinearLayout
android:id="@+id/popup_anima"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentBottom="true"
android:background="@android:color/white"
>
<TextView
android:id="@+id/tx_1"
android:layout_width="match_parent"
android:layout_height="60dp"
android:gravity="center"
android:text="分享到朋友圈"/>
<View
style="@style/line_style"/>
<TextView
android:id="@+id/tx_2"
android:layout_width="match_parent"
android:layout_height="60dp"
android:gravity="center"
android:text="分享给微信好友"/>
<View
style="@style/line_style"/>
<TextView
android:id="@+id/tx_3"
android:layout_width="match_parent"
android:layout_height="60dp"
android:gravity="center"
android:text="取消"/>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
defaultConfig {
applicationId "org.pointstone.cugapp"
minSdkVersion 16
targetSdkVersion 24
versionCode 10
versionName "1.0.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
求解决,我要崩溃
PHPz2017-04-18 09:15:40
사실 clear
프로젝트는 일반적으로 좋을 것 같아요. Popupwindow
은 xml로 작성되지 않았고 전체 패키지 이름이 필요하지만 작성 방법에는 문제가 없지만 Android Studio
이 자주 발생합니다. 작성한 코드를 apk에 압축하지 마세요. 개발 중에 자주 발생하는 문제인데 절반은 해결할 수 있습니다Clear 或 Restart(Pc/Android Studio)
PHPz2017-04-18 09:15:40
이 오류는 일반적으로 실행 환경에서 클래스를 찾을 수 없거나 정의된 클래스 생성이 실패하여 발생합니다. 일반 컨트롤에서 이 오류는 컨트롤의 일부 필수 리소스를 찾을 수 없기 때문에 발생할 수 있습니다. attrs.xml, drawables 등과 같은 라이브러리를 사용하므로 jar에만 의존하는지 아니면 aar(완전한 Andorid 프로젝트 라이브러리)에만 의존하는지 여부에 관계없이 가져온 참조 라이브러리의 무결성을 확인해야 합니다. , 종속성을 다시 수정해야 할 수도 있습니다.