导入我的自定义类并调用它的方法?

2023-12-27

我为我的 Android 项目创建了一个名为“Sounds”的自定义类,我希望能够从我的活动中调用它。我的课内容如下:

package com.mypackage;

import java.util.HashMap;

import android.content.Context;
import android.media.SoundPool;

public class Sounds {

private static boolean sound = true;

private static final int FLIP_SOUND = 1;

private static Context context;
private static SoundPool soundPool;
private static HashMap<Integer, Integer> soundPoolMap;

public static void initSounds() {
    soundPoolMap.put(FLIP_SOUND, soundPool.load(context, R.raw.flip, 1));
}

public static void playFlip() {
        soundPool.play(soundPoolMap.get(FLIP_SOUND), 1, 1, 1, 0, 1);
}

public static void setSound(Boolean onOff) {
    sound = onOff;
}
}

在我的主 Activity 类中,我尝试导入该类,创建它的实例,但我想我只是不明白它是如何完成的。有人能指出我正确的方向吗?


编辑:来自你的Activity class:

private Sounds s;

@Override
protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);        
        s = new Sounds(this);
        s.initSounds();
}

您还可以将带有构造函数的上下文发送到您的自定义类。

删除静态变量和方法:

public class Sounds {

private boolean sound = true;

private int FLIP_SOUND = 1;

private Context context;
private SoundPool soundPool;
private HashMap soundPoolMap;

public Sounds(Context context){
   this.context = context;
   soundPoolMap = new HashMap();
   soundPool = new SoundPool(0, AudioManager.STREAM_MUSIC, 0);
}

public void initSounds() {
   soundPoolMap.put(FLIP_SOUND, soundPool.load(context, R.raw.flip, 1));
}

public void playFlip() {
    soundPool.play(soundPoolMap.get(FLIP_SOUND), 1, 1, 1, 0, 1);
}

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

导入我的自定义类并调用它的方法? 的相关文章

  • Android短音的正确播放方法?

    我正在创建一个应用程序 屏幕上将有多个图像 这些图像将是按钮 点击时会播放短促的声音 我对此进行了研究 只能找到我当前用来播放声音的方法 这似乎根本没有响应 我希望声音能够快速播放并且能够响应多次快速点击 我不确定这在 Android 中是
  • Cheesesquare:enterAlways 会产生错误的布局

    Adding enterAlways到 Cheesesquare 演示的滚动标志
  • 从响应中获取标头(Retrofit / OkHttp 客户端)

    我正在使用 Retrofit 与 OkHttp 客户端和 Jackson 进行 Json 序列化 并希望获取响应的标头 我知道我可以扩展 OkClient 并拦截它 但这发生在反序列化过程开始之前 我基本上需要的是获取标头以及反序列化的 J
  • 如何在android中显示保存在sdcard文件夹中的图像[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 当我正在显
  • 如何更改终端的默认目录?

    我想更改 Android Studio v2 2 2 终端的默认目录 当我打开终端时 它基于项目的目录 C 项目路径 我经常需要使用adb shell 所以我必须导航到 SDK 路径 平台工具 才能使用 adb 命令 是否可以更改终端的默认
  • 当它的父级是 ConstraintLayout 时设计 CardView 吗?

    我在编辑包含Relativelayout的Cardview内的RelativeLayout时搞砸了 ConstraintLayout会将相对布局的wrap content更改为0并添加工具 layout editor absoluteX 1
  • Android Eclipse 上的 Web 服务

    我是 android eclipse java 的新手 事实上这个论坛也是如此 有人遇到过这种情况吗 从用户那里获取输入并通过使用 android eclipse 中的 Web 服务来显示适当的结果 有可用的示例吗 非常感谢 我正在发布教程
  • Python 3:将字符串转换为变量[重复]

    这个问题在这里已经有答案了 我正在从 txt 文件读取文本 并且需要使用我读取的数据之一作为类实例的变量 class Sports def init self players 0 location name self players pla
  • logcat 中 mSecurityInputMethodService 为 null

    我写了一点android应显示智能手机当前位置 最后已知位置 的应用程序 尽管我复制了示例代码 并尝试了其他几种解决方案 但似乎每次都有相同的错误 我的应用程序由一个按钮组成 按下按钮应该log经度和纬度 但仅对数 mSecurityInp
  • Android 中如何通过彩信发送图片?

    我正在开发多媒体应用程序 我正在通过相机捕获一张图像 并希望将该图像和文本发送到其他号码 但我不知道如何通过彩信发送图像 MMS 只是一个 http post 请求 您应该使用执行请求额外的网络功能 final ConnectivityMa
  • Android 2.3 模拟器在更新位置时崩溃

    我正在使用 Eclipse 编写和调试 Android 应用程序 我需要做的事情之一是更新设备的位置 因此我尝试使用模拟器控制窗口中的位置控制面板 在 手动 选项卡上 我选择 十进制 输入有效的纬度和经度 然后单击 发送 不幸的是 接下来发
  • 我应该释放或重置 MediaPlayer 吗?

    我有自己的自定义适配器类 称为 WordAdapter 并且我正在使用媒体播放器 名为pronounce WordAdapter 类中的全局变量 我有不同的活动 其中每个列表项都有线性布局 名为linearLayout 我正在设置onCli
  • Android 如何将总天数准确更改为年、月、日?

    我正在做一个应用程序 该应用程序与根据给定的生日日期输入获取一个人的年龄有关 为此 我从下面的代码中获取从该日期到当前日期的总天数 String strThatDay 1991 05 10 SimpleDateFormat formatte
  • 在 Samsung Galaxy S5 Android 5.0 上使用 MediaPlayer 加载音频流需要超过 10 秒

    由于更新至 Android 5 0 MediaPlayer 在 Samsung Galaxy S5 上无法正常工作 启动音频流后加载时间超过 10 秒 示例代码 MediaPlayer mPlayer new MediaPlayer Str
  • 没有用于警告的设置器/字段 Firebase 数据库检索数据填充列表视图

    我只是想将 Firebase 数据库中的数据填充到我的列表视图中 日志显示正在检索数据 但适配器不会将值设置为列表中单个列表项中的文本 它只说 没有二传手 场地插入值 这让我觉得我的设置器没有正确制作 但 Android Studio 自动
  • 找不到符号 NOTIFICATION_SERVICE?

    package com test app import android app Notification import android app NotificationManager import android app PendingIn
  • 问题:为什么React Native Video不能全屏播放视频?

    我正在react native 0 57 7 中为android和ios创建一个应用程序并使用反应本机视频 https github com react native community react native video播放上传到的视频
  • 在 Android 应用程序资源中使用 JSON 文件

    假设我的应用程序的原始资源文件夹中有一个包含 JSON 内容的文件 我如何将其读入应用程序 以便我可以解析 JSON See 开放原始资源 http developer android com reference android conte
  • CamcorderProfile.videoCodec 返回错误值

    根据docs https developer android com reference android media CamcorderProfile html 您可以使用CamcorderProfile获取设备默认视频编解码格式 然后将其
  • 我的应用程序中的后退按钮出现问题[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想在手机关闭时清除共享首选项值 你

随机推荐

  • 在 C# 中创建 MS Teams 团队 - AddAsync 返回 null

    Context 我正在使用 C 中的 MS Graph API 创建新的 MS Teams 团队 My code var newTeam new Team DisplayName model DisplayName Description
  • 如何将两个 MySQL 列合并为一列?

    我想转换这个 MySQL 表 title1 title2 type qwe1 qwe2 3 asd1 asd2 7 PHP 中的此表 title type asd1 7 asd2 7 qwe1 3 qwe1 3 但我不知道如何按第一列正确排
  • History.js - 正确的实现

    我使用 JQuery Ajax 在名为 container 的 div 中加载网站上的内容 我必须有不同类型的链接 正常锚链接 JQuery 触发器 当单击特定 div 时触发事件 现在我想添加功能来支持后退和前进浏览器按钮以及书签功能 我
  • 如何加快 MongoDB 视图上的计数

    我一直在排查为什么我创建的 MongoDB 视图如此慢 该视图的目标是transactions集合 并返回具有openBalance大于0 我还运行一些额外的聚合阶段来按照我想要的方式塑造数据 为了加快视图的执行速度 它通过匹配视图聚合管道
  • 服务的任何公共方法的 AOP 切入点表达式

    什么是最简单的切入点表达式 它将拦截所有带有注释的bean的所有公共方法 Service 例如 我希望它会影响该 bean 的两个公共方法 Service public MyServiceImpl implements MyService
  • SVN对单个文件的权限

    SVN 是否可以为单个文件设置写权限 而存储库的其余部分都是只读的 另一种可能性是预提交挂钩脚本 http svnbook red bean com en 1 5 svn ref reposhooks pre commit html
  • 计算特定范围sql server的记录数

    我正在尝试编写一个查询来根据多个不同范围来计算记录数 我成功使用了union 但我觉得有更好的方法来做到这一点 这是我所做的 select count col1 as range1 from tbl1 where col1 lt 15000
  • 将 IOS 应用程序从一个帐户的 Testflight 转移到另一个帐户

    App is 未发表在 App Store 上 但通过以下方式分发给测试人员试飞在以前的帐户上 现在我必须将应用程序转移到新帐户 具有相同的捆绑包标识符 我可以将其放置在具有相同捆绑包标识符的新帐户中吗 转移应用程序的程序是什么 因为它在
  • 如何格式化 MongoEngine PointField 的数据

    所以我想用mongodb中的位置数据做一些实验 所以我写了一些python代码来生成一些测试数据 不幸的是 文档位于http docs mongoengine org apireference html mongoengine fields
  • 获取应用程序共享意图的包名称

    我想获取创建共享意图的应用程序名称或其包名称 我正在制作通过意图接收共享数据的应用程序 如何获取创建者应用程序的包名称 类似于 intent getSourceBackageName EDIT 我不确定我的问题是否清楚 但我需要找出调用我的
  • Git clean 排除嵌套子目录

    我在使用 git clean 和排除嵌套目录选项时遇到问题 我想从存储库中清除所有未提交的文件 不包括vendor bundle为了 我的测试报告如下 debugg dir git file txt not commited file no
  • Javascript整数从零开始[重复]

    这个问题在这里已经有答案了 我有一个关于 javascript 如何解析以零开头的整数 例如银行帐号 的问题 下面是来自 Chrome 开发工具的简单示例 var zeroTest 022 undefined zeroTest 18 为什么
  • R.java 无法为 Android 库应用程序正确生成

    我创建了一个简单的 Android 库应用程序 其中只有 1 个包含 TextView 的活动 它工作正常 但是当我将其标记为库并在另一个应用程序中引用时 当我尝试使用 findViewById R id welcome textview
  • 使用 env('APP_ENV')、config('app.env') 或 App::environment() 获取应用程序环境有什么区别?

    使用上有什么区别env APP ENV config app env or App environment 获取应用程序环境 我知道env APP ENV 愿意 ENV config app env 读取配置并App environment
  • 在 Spring Boot 中为 Undertow 启用 HTTP 2.0

    我想知道如何使用 Spring Boot 为 Undertow 启用 HTTP 2 0 我监控了该协议 目前 HTTPS 使用的是 1 1 有什么财产可以用吗 或者我应该使用此选项创建一个 EmbeddedServletContainerF
  • Python isnumeric 函数仅适用于 unicode

    我正在尝试使用以下命令检查字符串是否为数字isnumeric功能正常 但结果并不如预期 该函数仅在它是 unicode 字符串时才起作用 gt gt gt a u 1 gt gt gt a isnumeric True gt gt gt a
  • ajax 自动完成扩展器不起作用

    我在文本框中有一个自动完成扩展器 它将记录显示为数据库中的列表 但是当我单击文本框并开始输入任何内容时 却没有发生任何事情 我的html代码是
  • Java for循环优化

    我用 java for 循环做了一些运行时测试 并发现了一个奇怪的行为 对于我的代码 我需要原始类型 如 int double 等 的包装对象来模拟 io 和输出参数 但这不是重点 只要看我的代码即可 具有字段访问的对象如何比原始类型更快
  • 如何将表单输入绑定到字典值

    我正在创建一个 ASP NET core razor 页面 Web 应用程序 其中一个页面需要能够修改Dictionary
  • 导入我的自定义类并调用它的方法?

    我为我的 Android 项目创建了一个名为 Sounds 的自定义类 我希望能够从我的活动中调用它 我的课内容如下 package com mypackage import java util HashMap import android