java - Android:java.lang.ClassCastException:com.android.layoutlib.bridge.android.BridgeContext 无法转换为 android.app.Activity”

标签 java android android-activity android-context onmeasure

这些是详细的问题:

java.lang.ClassCastException: com.android.layoutlib.bridge.android.BridgeContext cannot be cast to android.app.Activity
at io.jchat.android.view.LoginView.onMeasure_Original(LoginView.java:123);
at io.jchat.android.view.LoginView.onMeasure(LoginView.java) ;

我的代码是:

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

    int height = MeasureSpec.getSize(heightMeasureSpec);
    mContext = getContext();
    Activity activity = (Activity)mContext;
        activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);

    int statusBarHeight = rect.top;

    activity.getWindowManager().getDefaultDisplay().getMetrics(dm);

    int screenHeight = dm.heightPixels;
    int diff = (screenHeight - statusBarHeight) - height;

    if(mListener != null){
        mListener.onSoftKeyboardShown(diff);
    }
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}

作为一名新生,我渴望得到你的帮助。谢谢!

最佳答案

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

    int height = MeasureSpec.getSize(heightMeasureSpec);

    int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");

    int statusBarHeight = 0;
    if (resourceId > 0) {

         statusBarHeight = getResources().getDimensionPixelSize(resourceId);
    }

    dm = getResources().getDisplayMetrics();

    int screenHeight = dm.heightPixels;
    int diff = (screenHeight - statusBarHeight) - height;
    if(mListener != null){
        mListener.onSoftKeyboardShown(diff);
    }
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}

关于java - Android:java.lang.ClassCastException:com.android.layoutlib.bridge.android.BridgeContext 无法转换为 android.app.Activity”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42366172/

相关文章:

java - 检查按钮周围是否有空白区域

java - Android Canvas 试图绘制太大的异常

java - 安卓位图曝光

java - RecursiveTask 中的 Spring 托管 bean 是否有锁定

java - 如何在按下按钮时持续循环播放声音并在释放时停止?

java - apk转jar后如何访问资源(R.class)

android签名工具PEPK lnk下载

Java 创建长字符串

android - 如何将非基本数据传递给创建 Activity ?

android - 如何使用 ADB 终止所有 Activity 任务/应用程序?