ClassCastException:android.app.Application

2024-01-13

导致错误的类如下:

package com.extrasmart;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
//import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.AdapterView.OnItemSelectedListener;

public class ActivityImgGrid extends Activity {

    ExtraSmartApplication application = (ExtraSmartApplication) getApplication();

    GridView mGrid;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activityimg_grid);
        mGrid = (GridView) findViewById(R.id.imgGrid);
        mGrid.setAdapter(new AppsAdapter());
        mGrid.setOnItemSelectedListener(new OnItemSelectedListener()
        {
            public void onNothingSelected(AdapterView v) {
                // TODO Auto-generated method stub

            }

            public void onItemSelected(AdapterView parent, View v, int position, long id) {
                ExtraSmartApplication application = (ExtraSmartApplication) getApplication();

                application.setSelCategoryIcon(position);
                setResult(RESULT_OK);        
                finish();

            }

        });

    }

    public class AppsAdapter extends BaseAdapter {
        ExtraSmartApplication application = (ExtraSmartApplication) getApplication();
        private Integer[] imageIDs = application.getCategoryIcons();

        public AppsAdapter() {
        }

        public View getView(int position, View convertView, ViewGroup parent) {
            ImageView i;

            if (convertView == null) {
                i = new ImageView(ActivityImgGrid.this);
                //i.setScaleType(ImageView.ScaleType.FIT_CENTER);
                i.setLayoutParams(new GridView.LayoutParams(48, 48));
                i.setScaleType(ImageView.ScaleType.CENTER_CROP);
                i.setPadding(5, 5, 5, 5);
            } else {
                i = (ImageView) convertView;
            }

            i.setImageResource(imageIDs[position]);
            return i;
       }


        public final int getCount() {
            return imageIDs.length;
        }

        public final Object getItem(int position) {
            return imageIDs[position];
        }

        public final long getItemId(int position) {
            return position;
        }
    }

}

xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/imgGrid"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:verticalSpacing="10dp"
    android:horizontalSpacing="10dp"
    android:numColumns="auto_fit"
    android:columnWidth="48px"
    android:stretchMode="columnWidth"    
    android:gravity="center"
    android:minHeight="48px"
    android:minWidth="48px"
    />

ActivityImgGrid 类使用的类:

public class ExtraSmartApplication extends Application {

    //private static final String APP_CREDENTIALS = null;
    private Integer selCategoryImg;
    private boolean isCardImageNew = false;
    private byte[] cardImage = null;

    private Integer[] categoryImgs = {
            R.drawable.cricket,
            R.drawable.football,
            R.drawable.vollyball
    };

    private boolean isCatCreated = false;

    public ExtraSmartApplication() {
        super();
    }

    @Override
    public void onTerminate() {
        super.onTerminate();
    }


    public Integer getSelCategoryIcon() {
        return this.selCategoryImg;
    }

    public Integer[] getCategoryIcons() {
        return this.categoryImgs;
    }

    public void setSelCategoryIcon(int position) {
        this.selCategoryImg = categoryImgs[position];
    }

    public void setCatCreated(boolean isCatCreated) {
        this.isCatCreated = isCatCreated;
    }

    public boolean isCatCreated() {
        return isCatCreated;
    }

    public void setCardImageNew(boolean isCardImageNew) {
        this.isCardImageNew = isCardImageNew;
    }

    public boolean isCardImageNew() {
        return isCardImageNew;
    }

    public void setCardImage(byte[] cardImage) {
        this.cardImage = cardImage;
    }

    public byte[] getCardImage() {
        return cardImage;
    }
}

ExtraSmartApplication application = (ExtraSmartApplication) getApplication(); 

Add:

<application android:icon="@drawable/icon" 
    android:label="@string/app_name" 
    android:name="ExtraSmartApplication">

在您的 Android manifest.xml 文件中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ClassCastException:android.app.Application 的相关文章

  • 如何对这个字符串进行子串化

    我想得到这个字符串的 4 个部分 String string 10 trillion 896 billion 45 million 56873 我需要的4个部分是 10万亿 8960亿 4500万 和 56873 我所做的是删除所有空格 然
  • Sqlite数据库生命周期?关闭应用程序后它会被删除吗?

    我正在遵循一个简单的教程 该教程创建一个从 SQLiteOpenHelper 扩展的类 并创建一个包含一个表和 5 行的数据库 好的 但我需要更多地了解 android Sqlite 数据库 例如 如果应用程序关闭或手机关机会发生什么 数据
  • 找不到 com.google.firebase:firebase-core:9.0.0 [重复]

    这个问题在这里已经有答案了 在遵循有些不一致的指示之后here https firebase google com docs admob android quick start name your project and here http
  • 是否可以将数组或对象添加到 Android 上的 SharedPreferences

    我有一个ArrayList具有名称和图标指针的对象 我想将其保存在SharedPreferences 我能怎么做 注意 我不想使用数据库 无论 API 级别如何 请检查SharedPreferences 中的字符串数组和对象数组 http
  • 当文本输入聚焦在 React Native for Android 的底部工作表上时,视图移出屏幕

    我正在使用图书馆 https github com osdnk react native reanimated bottom sheet https github com osdnk react native reanimated bott
  • Android 模拟器插件无法初始化后端 EGL 显示

    我在 Cloudbees 上设置了 Jenkins 作业 并且可以在那里成功签出并编译我的 Android 项目 现在我想在 android 模拟器中运行一些 JUnit 测试并添加 Android 模拟器插件 我将 显示模拟器窗口 选项设
  • Android 中 Kotlin 协程的正确使用方式

    我正在尝试使用异步更新适配器内的列表 我可以看到有太多的样板 这是使用 Kotlin 协程的正确方法吗 这个可以进一步优化吗 fun loadListOfMediaInAsync async CommonPool try Long runn
  • CollapsingToolBarLayout - 状态栏稀松布颜色不改变

    几天前我更新了我的 android studio 并开始使用 CoordinatorLayout 和 CollapsingToolbarLayout 只是尝试一些东西 工具栏稀松布颜色似乎覆盖了状态栏初始颜色和状态栏稀松布颜色 从 xml
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • Android SIP 来电使用带有广播接收器的服务

    大家好 其实我正在尝试创建一个应用程序 支持基于 SIP 通过互联网进行音频呼叫 这里使用本机 sip 我遇到了来电问题 我已经完成了服务的注册部分 但是在接听电话时我无法接听电话 请帮助我 Service file package exa
  • 带有 EditText 和 Spinner 的对话框

    我有一个按钮 单击后会弹出一个对话框 我希望对话框有一个EditText and a Spinner对话框内 我不知道如何设置它的视图 我有一个代码AlertDialog它有效 只是EditText and Spinner我需要将其放入其中
  • 无法访问 com.google.android.gms.internal.zzbfm 的 zzbfm 类文件未找到

    我正在将我的 Android 应用程序项目从GCM to FCM 为此 我使用 Android Studio 中的 Firebase 助手工具 并遵循 Google 开发人员指南中的说明 一切都很顺利 并将我的应用程序代码更改为FCM根据助
  • 你的CPU不支持NX

    我刚刚下载了 android studio 但是我遇到了一个问题 当我运行它时 它说你的 cpu 不支持 NX 我应该怎么办 NX 或实际上是 NX 处理器位 是处理器的一项功能 有助于保护您的 PC 免受恶意软件的攻击 当此功能未启用并且
  • 如何发布Android .aar源以使Android Studio自动找到它们?

    我正在将库发布到内部 Sonatype Nexus 存储库 Android Studio 有一个功能 可以自动查找通过 gradle 引用的库的正确源 我将 aar 的源代码作为单独的 jar 发布到 Nexus 但 Android Stu
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • Android Studio 0.4.3 Eclipse项目没有gradle

    在此版本之前 在 Android Studio 中按原样打开 Eclipse 项目似乎很容易 无需任何转换 我更喜欢 Android Studio 环境 但我正在开发一个使用 eclipse 作为主要 IDE 的项目 我不想只为这个项目下载
  • Android访问远程SQL数据库

    我可以直接从 Android 程序访问远程 SQL 数据库 在网络服务器上 吗 即简单地打开包含所有必需参数的连接 然后执行 SQL 查询 这是一个私人程序 不对公众开放 仅在指定的手机上可用 因此我不担心第三方获得数据库访问权限 如果是这
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • 将两个文本视图并排放置在布局中

    我有两个文本视图 需要在布局中并排放置 并且必须遵守两条规则 Textview2 始终需要完整显示 如果布局中没有足够的空间 则必须裁剪 Textview1 例子 文本视图1 文本视图2 Teeeeeeeeeeeeeeeeeextview1
  • android sdk 的位置尚未在 Windows 操作系统的首选项中设置

    在 Eclipse 上 我转到 windows gt Android SDK 和 AVD Manager 然后弹出此消息 Android sdk 的位置尚未在首选项中设置 进入首选项 在侧边栏找到 Android 然后会出现一个 SDK 位

随机推荐

  • 情节大小固定在闪亮?调整大小不起作用

    我尝试改装this https plot ly r shinyapp plotly events 适合我的目的的闪亮应用程序 由于我想在其上方添加一些文本 因此我使用 Rmd 格式 以下代码与链接中的代码完全相同 只是我删除了服务器和用户界
  • 如何根据包含特定值的行(在任何列中)过滤数据框

    我需要限制数据集 以便它仅返回包含特定字符串的行 但是 该字符串可以存在于许多 8 列中 我怎样才能做到这一点 我见过 str isin 方法 但它返回单行的单个系列 如何删除任何列中包含该字符串的任何行 示例代码 如果我有由生成的数据框
  • UITableView - 辞去外部触摸的第一响应者

    我有一个 UITableView 和一个关联的 UITableViewController 但是 我已经修改了该表 使其也有一个带有文本字段子视图的视图 与往常一样 我希望当用户点击 完成 简单 以及触摸屏幕上除文本字段之外的其他任何位置时
  • 使用变量作为索引来回显批处理文件数组?

    如果我有一个批处理文件 并且我正在设置带有变量索引的数组 echo off SET x 1 SET myVar x happy 我该如何回应才能获得 快乐 我试过了 ECHO myVar x ECHO myVar x ECHO myVar
  • Java 9 + maven + junit:测试代码是否需要自己的 module-info.java 以及将其放在哪里?

    假设我有一个使用 Maven 3 和 junit 的 Java 项目 有src main java and src test java分别包含主要源和测试源的目录 一切都是标准的 现在我想将项目迁移到Java 9 src main java
  • 为什么 python 切片语法不从负索引环绕到正索引?

    我注意到 鉴于l 1 2 3 that l 1 回报 3 正如预期的那样 但是l 1 0 回报 与我的预期非常不同 然后我尝试了 1 1 我期望返回 3 1 但它也会返回 切片语法不从负索引环绕到正索引 反之亦然 是否有充分的理由 看起来它
  • SonarQube/SonarLint/Visual Studio:对解决方案中的所有项目使用一个规则集

    我们目前正在评估 SonarQube SonarLint 在我们的 NET 应用程序中的使用情况 我们对迄今为止所看到的情况非常满意 顺便说一句 值得称赞的是 SonarQube 已经走到了这一步 几年前我在我的博士项目中使用了它 从那时起
  • 如何使用 OleDb 读取 Oracle 中的 CLOB 列?

    我在 Oracle 10g 数据库上创建了一个具有以下结构的表 create table myTable id number 32 0 primary key myData clob 我可以毫无问题地在表中插入行 但是当我尝试使用 OleD
  • 如何以及何时使用 PreventDefault()?

    由此tutorial http blog nmsdvid com when to use return false and when preventdefault 据说 preventDefault 做一件事 停止浏览器默认设置 行为 我在
  • SharedObject 支持哪些数据类型?

    我知道用 SharedObject 存储字符串和数字是一件简单的事情 而且我也熟悉这类事情 var sharedObject SharedObject SharedObject getLocal userData var obj Objec
  • http://localhost/undefined 404(未找到)

    我的问题描述不清楚 让我再尝试一次 注意 这是我的生产 登台和开发网站 不仅仅是评论者似乎认为的那样只是我的开发网站 常见的问题 注意 使用 Chrome 时会出现此问题 而使用 Firefox 时不会出现此问题 问题出现在网站首页 htt
  • 将变量传递到 Zend Form

    我有一个实例化的 zend 表单 form Form Example 现在我想将 ID 从我的控制器传递到我的表单 所以我这样做了 form Form Example array id gt id 在表单内我尝试通过以下方式调用它 this
  • Android 表格布局中的右对齐列

    我想绘制一个表格 其中最后一列应位于表格的最右侧 表格行如下所示 Admin 2 New Network 2 New 事情应该是这样的 Admin 2 New Network 2 New XML
  • “未绑定到有效相机”CameraX 错误

    我试图遵循谷歌的 CameraX入门 代码实验室 我尝试用Java而不是Kotlin来完成它 但是当我运行它并尝试拍照时 它给了我一个错误 说未绑定到有效的相机 我在代码中找不到错误所在 我检查了 logcat 它说表面可能存在问题 它可能
  • 检测实际的形式变化?

    是否有一种现成的方法 也许在一个框架中 来检测表单是否具有changed与其原始值相比 onchange 事件不会执行 因为无论实际更改如何 它都会触发 例如 我可以使用两个 onchange 事件勾选一个复选框 然后再次关闭 最后的手段是
  • 索引布尔列与日期时间列的查询性能

    如果索引设置为datetime键入列 而不是boolean输入列 并且查询是在该列上完成的 在我当前的设计中 我有两列 is active小整数 1 indexed deleted at约会时间 查询是SELECT FROM table W
  • 选择哪个 log4j 门面?

    本质上 我正在寻找与 log4j 具有相同行为 配置 日志记录级别的东西 但缺少一些功能 例如格式化日志记录 请参阅here https stackoverflow com questions 920458 and here https s
  • 如何在 Xcode 中使用 cocos2d?

    我下载了最新版本的 cocos2d 但我对如何在当前项目中使用它感到困惑 谁能告诉我如何在 xcode 中使用它 我正在设计一个二维迷宫 我必须进口一些东西吗 任何形式的帮助将不胜感激 是的 您需要将cocos2d文件拖到您的项目中 然后它
  • boost.org 的 Spirit 解析器生成器框架有哪些缺点?

    在几个问题中我看到了以下建议Spirit http www boost org doc libs 1 37 0 libs spirit classic index html解析器生成器框架来自boost org http www boost
  • ClassCastException:android.app.Application

    导致错误的类如下 package com extrasmart import android app Activity import android os Bundle import android view View import and