Android:当我在片段附近使用它时,在 runOnUiThread 附近出现错误

2023-12-31

我是 Android 开发新手,我想将按钮与动画链接起来。我在附近遇到错误runOnUiThread() and getApplication()。当我将其添加为一项活动时,这很好,但是当在MainFragment它给出了错误。但是,当我修复错误时,它会创建一个方法并返回 false。

public class MainFragment extends Fragment {


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    View rootView = inflater.inflate(R.layout.activity_main, container, false);
    ImageButton btnFacebook = (ImageButton)rootView.findViewById(R.id.facebook2);
    final Animation alpha = AnimationUtils.loadAnimation(getActivity(), R.anim.anim_alpha);

    btnFacebook.setOnClickListener(new Button.OnClickListener(){

        @Override
        public void onClick(View arg0) {
            arg0.startAnimation(alpha);

            Thread thread = new Thread()
            {
                @Override               
                public void run()
                {
                    try
                    {
                        Thread.sleep(1000);
                    }catch(InterruptedException e){                         
                    }
                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                          startActivity(new Intent(getApplication(),FacebookActivity.class)); 
                        }

                    });
                }
            };


            thread.start();
          }}); 
    return rootView;
}}

在 XML 文件中我只有 facebook 图像按钮。当我单击它时,它必须触发动画,然后必须发生 onclick 事件,但我不知道为什么会弹出此错误:

对于 new Thread(){} 类型,方法 runOnUiThread(new Runnable(){}) 未定义


runOnUIThread(...)是一种方法Activity.

因此,使用这个:

getActivity().runOnUIThread(...);

但是,要小心。你正在处理异步线程,所以你的Fragment可能与其分离Activity, 导致getActivity()返回null。您可能想要添加支票if(isAdded()) or if(getActivity() != null)在执行之前。

或者,使用AsyncTask,它自行处理在 ui 线程上运行的情况。

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

Android:当我在片段附近使用它时,在 runOnUiThread 附近出现错误 的相关文章

  • 如何使用 IF 检查 TextView 可见性

    我有一个 onCheckedChangeListener 来根据选择的单选按钮显示文本视图 我有 1 个疑问和 1 个难题 想知道是否有人可以帮助我 问题 您能否将单选组默认检查值设置为 否 单选按钮 以便一开始就不会检查任何内容 问题 如
  • 如何为俚语和表情符号构建正则表达式 (regex)

    我需要构建一个正则表达式来匹配俚语 即 lol lmao imo 等 和表情符号 即 P 等 我按照以下示例进行操作http www coderanch com t 497238 java java Regular Expression D
  • 从 127.0.0.1 到 2130706433,然后再返回

    使用标准 Java 库 从 IPV4 地址的点分字符串表示形式获取的最快方法是什么 127 0 0 1 到等效的整数表示 2130706433 相应地 反转所述操作的最快方法是什么 从整数开始2130706433到字符串表示形式 127 0
  • 我想实现下面的布局,按钮应该在屏幕底部,当惰性列被填充时,按钮不应该出去

    顶部有惰性列 惰性列下方有输入电话号码布局并从电话簿布局添加联系人 我希望当未添加联系人时此布局位于顶部 当我添加大量联系人时输入电话号码并添加电话簿布局中的联系人会随着惰性列滚动并移出屏幕 我不让他们走出屏幕 当接触较多时 它们必须粘在底
  • 如何默认在 ActionOpenDocument 意图中显示“内部存储”选项

    我需要用户选择一个自定义文件类型的文件 并将其从 Windows 文件资源管理器拖到 Android 设备上 但默认情况下内部存储选项不可用 当我使用以下命令启动意图时 var libraryIntent new Intent Intent
  • Java TestNG 与跨多个测试的数据驱动测试

    我正在电子商务平台中测试一系列商店 每个商店都有一系列属性 我正在考虑对其进行自动化测试 是否有可能有一个数据提供者在整个测试套件中提供数据 而不仅仅是 TestNG 中的测试 我尝试不使用 testNG xml 文件作为机制 因为这些属性
  • 尝试在 ubuntu 中编译 android 内核时出错

    我正在尝试从源代码编译 Android 内核 并且我已经下载了所有正确的软件包来执行此操作 但由于某种原因我收到此错误 arm linux androideabi gcc error unrecognized command line op
  • 在 android DatePickerDialog 中将语言设置为法语

    有什么办法可以让日期显示在DatePickerDialog用法语 我已经搜索过这个但没有找到结果 这是我的代码 Calendar c Calendar getInstance picker new DatePickerDialog Paym
  • Android Studio - Windows 7 上的 Android SDK 问题

    我对 Google i o 2013 上发布的最新开发工具 Android Studio 有疑问 我已经成功安装了该程序并且能够正常启动 我可以导入现有项目并对其进行编辑 但是 当我尝试单击 SDK 管理器图标或 AVD 管理器图标时 或者
  • 仅将 char[] 的一部分复制到 String 中

    我有一个数组 char ch 我的问题如下 如何将 ch 2 到 ch 7 的值合并到字符串中 我想在不循环 char 数组的情况下实现这一点 有什么建议么 感谢您花时间回答我的问题 Use new String value offset
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • Google App Engine 如何预编译 Java?

    App Engine 对应用程序的 Java 字节码使用 预编译 过程 以增强应用程序在 Java 运行时环境中的性能 预编译代码的功能与原始字节码相同 有没有详细的信息这是做什么的 我在一个中找到了这个谷歌群组消息 http groups
  • 无法捆绑适用于 Mac 的 Java 应用程序 1.8

    我正在尝试将我的 Java 应用程序导出到 Mac 该应用程序基于编译器合规级别 1 7 我尝试了不同的方法来捆绑应用程序 1 日食 我可以用来在 Eclipse 上导出的最新 JVM 版本是 1 6 2 马文 看来Maven上也存在同样的
  • 在mockito中使用when进行模拟ContextLoader.getCurrentWebApplicationContext()调用。我该怎么做?

    我试图在使用 mockito 时模拟 ContextLoader getCurrentWebApplicationContext 调用 但它无法模拟 here is my source code Mock org springframewo
  • .isProviderEnabled(LocationManager.NETWORK_PROVIDER) 在 Android 中始终为 true

    我不知道为什么 但我的变量isNetowrkEnabled总是返回 true 我的设备上是否启用互联网并不重要 这是我的GPSTracker class public class GPSTracker extends Service imp
  • 如何在桌面浏览器上使用 webdriver 移动网络

    我正在使用 selenium webdriver 进行 AUT 被测应用程序 的功能测试自动化 AUT 是响应式网络 我几乎完成了桌面浏览器的不同测试用例 现在 相同的测试用例也适用于移动浏览器 因为可以从移动浏览器访问 AUT 由于它是响
  • 在activity_main.xml中注释

    我是安卓新手 据我所知 XML 中的注释与 HTML 中的注释相同 使用 形式 我想在 Android 项目的 Activity main xml 配置文件中写一些注释 但它给了我错误 值得注意的是 我使用的是 Eclipse 但目前 我直
  • 在 Maven 依赖项中指定 jar 和 test-jar 类型

    我有一个名为 commons 的项目 其中包含运行时和测试的常见内容 在主项目中 我添加了公共资源的依赖项
  • 使用 JMF 创建 RTP 流时出现问题

    我正处于一个项目的早期阶段 需要使用 RTP 广播DataStream创建自MediaLocation 我正在遵循一些示例代码 该代码目前在rptManager initalize localAddress 出现错误 无法打开本地数据端口
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • HTML 源代码中没有嵌套链接元素的嵌套超链接区域

    我想要一些看起来和行为都像大矩形 整页宽 内的超链接的东西 这也是超链接 下面是它应该是什么样子的 ASCII 艺术表示 Some text link 整个外部矩形 块元素 将成为超链接 在这个矩形内应该有一些文本 并且在该文本的末尾应该有
  • 手动实现bayern转RGB

    我正在尝试实现图像转换 Bayern Pattern gt RGB I uploaded this image 这是我的代码片段 import cv2 import numpy as np from matplotlib import py
  • 使用 Python Logging 记录出现两次的消息

    我正在使用 Python 日志记录 由于某种原因 我的所有消息都出现了两次 我有一个配置日志记录的模块 BUG It s outputting logging messages twice not sure why it s not the
  • pcap_pkthdr 是做什么用的?

    代码片段来自here https www winpcap org docs docs 40 2 html group wpcap tut6 html void packet handler u char param const struct
  • 如何使用 .NET Core 从 nuget 从命令行下载包?

    微软软件包Linux 上的 NET Core https learn microsoft com en us nuget tools cli ref install对于Ubuntu 我目前正在使用它 我现在想安装Json NET https
  • Spring:POJO的@Autowired,不由Spring管理[重复]

    这个问题在这里已经有答案了 我使用 Autowired 在 POJO 中注入一些服务 这些服务注册为 Bean 如果一旦 POJO 由 Spring 管理 它也在 Spring Config 上注册为 Bean 那么注入服务就没有问题 但是
  • 在 Linux 中将文本文件中的空格替换为逗号

    我需要编辑一些文本文件 来自sar 并将它们转换为 CSV 文件 我需要使用 sed 或 awk 函数 Linux 中的简单 shell 脚本 更改每个空格 可能是输出中数字之间的制表符 谁能帮我 我使用的每个命令根本没有改变文件 我试过g
  • 如何使滚动条在有角度的材料中始终可见?

    所以目前 我正在使用角度材料及其默认滚动 但我认为它是完美的滚动条 用作滚动条的滚动设计 但只有当用户尝试滚动页面 div 时才会显示滚动 我尝试阅读 Angular Material 的滚动 api 但没有可以在此处使用的属性 我已经把o
  • Selenium 中的 WebDriver 和 WebElement 有什么区别?

    Selenium 中的 WebDriver 和 WebElement 有什么区别 示例代码 WebDriver driver new FirefoxDriver driver get http www google com WebEleme
  • 反应本机 PIP

    我需要将画中画模式添加到反应本机应用程序 iOS 中 但我不知道如何去做 我看到这是react native video 的一个功能 但我对视频使用了不同的模块 所以我只能将画中画添加为单独的功能 任何包含有关如何设置的详细信息的文档 博客
  • Puppeteer 流程​​逻辑,检查导航是否发生(与等待)

    寻找一些反馈 在 Puppeteer 中 我想检查导航是否发生 如果发生则执行某些操作 否则如果未发生则执行其他操作 例如重试 我想出的两种方法是 if await page url finalURL let t 0 busy while
  • Selenium WebDriver Click() 在 IE9 中失败

    我看过很多其他类似的帖子 不幸的是无法解决这个问题 所以这里 我正在使用 Selenium WebDriver C 实现 版本 2 15 来驱动一个相当简单的网页 该页面包含一个表单 其中有两个用于用户名和密码的 以及一个用于提交表单的 我
  • 使用 tidyverse 和 broom 进行许多回归:相同的因变量,不同的自变量

    此链接显示了在我们具有相同的自变量但可能有许多不同的因变量的情况下如何回答我的问题 使用 broom 和 tidyverse 对不同的因变量进行回归 https stackoverflow com questions 51642146 us
  • Magento 2:重新索引不起作用

    我做不到重新索引 in 玛根托2 谷歌之后我得到了解决方案We can reindex with shell command php dev shell indexer php reindexall 但它给出了错误 Could not op
  • 无法使用 C# 客户端反序列化日期时间属性 Neo4j

    我正在尝试使用 C 客户端从 Neo4j 中获取强类型对象 这一切都有效 直到我添加DateTime财产 我已成功将数据插入 Neo4j 数据库 并且可以使用控制台查看它 我还可以查询数据 但无法返回任何强类型对象 因为反序列化似乎失败 我
  • Linux C++:如何跨多个文件正确使用模板专业化?

    我有一个奇怪的问题 在 Windows 上 使用 Visual Studio 2010 以及 Intel 编译器 一切都按预期链接 但是 当我尝试在 Linux 上使用 CLang 3 0 编译代码时 它会编译 如果我只使用单个 CPP 文
  • 如何测量 Android wifi 连接中的上传/下载速度和延迟

    我需要一些 api 或操作代码 通过它们我可以测量 android 应用程序的上传 下载速度和 wifi 连接的延迟 您使用的是 2 2 Froyo 或更高版本吗 如果是这样 请在您的应用程序中导入流量统计信息 并在您的应用程序使用互联网时
  • C# 数据绑定不更新 WPF

    我正在尝试在后面的 C 代码而不是 XAML 中进行数据绑定 在 Expression Blend 2 中创建的 XAML 绑定到我的 CLR 对象工作正常 我的 C 实现仅在应用程序启动时更新 之后对 CLR 的后续更改不会更新我的标签内
  • php 抓取并输出给定​​标签中的特定值或数字

    所以我对 php 很陌生 但在一些帮助下 我已经弄清楚如何抓取具有像 h1 class 这样的标签标识符的网站 更好的是 我已经弄清楚如何输出我想要的精确单词或值 只要它由空格分隔即可 例如 如果给定的标签名称 的输出为 30 个球 我可以
  • Android:当我在片段附近使用它时,在 runOnUiThread 附近出现错误

    我是 Android 开发新手 我想将按钮与动画链接起来 我在附近遇到错误runOnUiThread and getApplication 当我将其添加为一项活动时 这很好 但是当在MainFragment它给出了错误 但是 当我修复错误时