操作栏后退按钮不起作用

2024-03-27

在这些的帮助下安卓文档 http://developer.android.com/training/implementing-navigation/ancestral.html#NavigateUp。我正在尝试做一个操作栏后退按钮。我得到一个操作栏后退按钮,如下图所示:

Output:

但我的问题是看完图库图像后我按action bar back button.

Then it is not working.但它必须go back to previous page.

下面列出了编码。

GalleryActivity.java:

    import android.app.ActionBar;
    import android.os.Bundle;
    import android.support.v4.app.FragmentActivity;
    import android.support.v4.app.NavUtils;
    import android.view.MenuItem;

    import com.fth.android.R;

   public class GalleryActivity extends FragmentActivity {

    private int position;
    private static String id;
    private static String name;
    private DemoCollectionPagerAdapter mDemoCollectionPagerAdapter;
    private ViewPager mViewPager;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_gallery);

            position = getIntent().getExtras().getInt("position");

            id = getIntent().getExtras().getString("id");

            name = getIntent().getExtras().getString("name");

            mDemoCollectionPagerAdapter = new DemoCollectionPagerAdapter(getSupportFragmentManager());

            // Set up action bar.
            final ActionBar actionBar = getActionBar();


            actionBar.setDisplayHomeAsUpEnabled(true);

           // getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_HOME|ActionBar.DISPLAY_USE_LOGO|ActionBar.DISPLAY_HOME_AS_UP);

            // Set up the ViewPager, attaching the adapter.
            mViewPager = (ViewPager) findViewById(R.id.pager);
            mViewPager.setAdapter(mDemoCollectionPagerAdapter);
        }

        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            switch (item.getItemId()) {
                case android.R.id.home:

                    Intent upIntent = new Intent(this, HomeActivity.class);
                    upIntent.putExtra("position", position);
                    if (NavUtils.shouldUpRecreateTask(this, upIntent)) {

                        TaskStackBuilder.from(this)
                                .addNextIntent(upIntent)
                                .startActivities();
                        finish();
                    } else {

                        NavUtils.navigateUpTo(this, upIntent);
                    }
                    return true;
            }
            return super.onOptionsItemSelected(item);
        }


      }

GalleryDetailFragment.java:

import com.sit.fth.model.GalleryDetail;
import com.sit.fth.util.APIServiceHandler;
import com.sit.fth.util.AppConstants;
import com.sit.fth.util.AppPromoPager;

public class GalleryDetailFragment extends BaseFragment implements
        PromoPagerListener {


    private TextView countView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        this.setHasOptionsMenu(true);
        id = getArguments().getString("id");
        name = getArguments().getString("name");
        View view = inflater.inflate(R.layout.app_pager, null);



        return view;
    }

}

如果您知道如何解决这些问题,任何人都可以帮助我。谢谢。


我通过添加以下编码解决了这些问题GalleryActivity.

ActionBar actionBar;
actionBar=getActionBar();

actionBar.setDisplayHomeAsUpEnabled(true);

@Override
public boolean onOptionsItemSelected(MenuItem item) { 
        switch (item.getItemId()) {
        case android.R.id.home: 
            onBackPressed();
            return true;
        }

    return super.onOptionsItemSelected(item);
}

In 主要活动:

之前,

公共类 HomeActivity 扩展了 BaseActivity

然后我变成

公共类 HomeActivity 扩展 FragmentActivity

In 画廊片段:

I use Intent将其传递给GalleryActivity.

@Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
        Gallery gallery = (Gallery) arg0.getAdapter().getItem(arg2);

        Intent intent = new Intent(getActivity(), GalleryActivity.class);
        intent.putExtra("position", position);
        intent.putExtra("id", gallery.getGalId());
        intent.putExtra("name", gallery.getAlbumTitle());
        startActivity(intent);

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

操作栏后退按钮不起作用 的相关文章

  • 如何在红米手机上通过应用程序图标显示徽章数量?

    我可以使用以下代码在三星设备上使用应用程序图标显示徽章计数
  • GCM 通知的自定义 UI

    In GCM Docs http developer android com google gcm gcm html其给定 它不提供任何内置用户界面或其他处理 消息数据 GCM 只是将收到的原始消息数据直接传递给 Android 应用程序
  • 如何在 Android 中以编程方式配置启动器活动?

    我正在开发一个具有两项活动的应用程序 LoginActivity and MainActivity 当用户首次打开应用程序时 他将登录并且他的凭据 用户名和令牌 保存在Preferences 现在 如果用户再次打开应用程序MainActiv
  • 关于android Sqlite在多进程情况下的安全性

    在我的应用程序中 存在多个进程 并且在每个进程中 我需要访问同一个SQLite数据库 当然 这意味着超过2个线程 所以我不仅担心SQLite的线程安全性 还担心SQLite的线程安全性 还有过程安全 这种情况的一种解决方案是使用内容提供者
  • 不支持动态值作为注释中的属性 - AspectJ Android [AOP Android]

    我正在使用自定义注释来记录用户单击的 id 但我收到一个错误 属性值必须是常量 我的代码片段如下 mAssetId Asset getContentId TrackEvent track event ArrayParams Params k
  • Android 视图展开动画

    我正在尝试编辑这些来源 https github com gabrielemariotti androiddev tree master AnimationTest创建一个适用于我所有视图的简单函数 Override public void
  • 找不到 RecyclerView 类 android.support.v7.recyclerview.R$styleable

    我在我的应用程序上使用 RecyclerView 但在运行时应用程序崩溃并且我的 logcat 读取 java lang RuntimeException Unable to start activity ComponentInfo com
  • 卡片视图工具栏

    我有一个包含 CardView 的 RecyclerView 我想向每个 CardView 添加一个工具栏 其外观和行为类似于主工具栏 图标 标题 按钮 按钮 菜单 我从这里看到了 http blog grafixartist com cr
  • 可以混淆/加密 SharedPreferences 文件吗?

    因此 我对混淆应用程序的 SharedPreferences xml 文件很感兴趣 就像 Android LVL 混淆其许可证 cahce 数据一样 这是可以想象的吗 大量的谷歌挖掘几乎没有产生任何可能解决我的问题的结果 我当然不是密码学家
  • Android 中的 XmlPullParser 陷入困境

    经过多个小时的搜索和调试后 我仍然停留在同一个地方 并且 Eclipse 没有帮助我 我试图解析这个 RSS 提要 http fr espnf1 com rss motorsport story feeds 0 xml type 2 这很简
  • Droid 3 上的列表视图背景为灰色

    我有一个带有自定义背景的列表框 它在黑色背景的两侧显示一条细白线 在我所有的测试手机 Galaxy Captivate Vibrant Nexus 1 G Tablet Archos 32 Droid 上运行良好 我刚买了一台 Droid
  • GSON:自定义对象反序列化

    好吧 我编辑了这个问题 因为它不够清楚 Edit 2 更新了 JSON 文件 我在 Android 应用程序中使用 GSON 我需要解析来自服务器的 JSON 文件 而且有点太复杂了 我不想让我的对象结构太重 所以我想简化内容 所以我的对象
  • 适用于 Droid 手机的数学或 LaTeX 引擎 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Android 手机有可用的数学或 LaTeX 引擎吗 我最喜欢的抽认卡应用程序 AnyMemo 似乎
  • 创建用于 Android 库分发的 JAR

    我正在开发一个 android 库 并希望导出一个 JAR 文件 我可以分发该文件供其他人在他们的应用程序中使用 我不想分发源代码 因为它包含有关发布到我的网络服务器的详细信息 我尝试使用在 bin 目录中创建的 JAR 文件并将该 jar
  • GCM(Google 云消息传递)是否需要 Google 帐户?

    我需要编写一个简单的应用程序来获取推送通知 我使用 GCM 它使用 Google Play 服务来获取信息 我的问题是 要访问 GCM 是否需要 Google 帐户 我可以使用其他电子邮件帐户来识别设备吗 有没有其他方法可以获取另一个电子邮
  • 在 Android 5 上支持 BLE 外设角色的芯片组 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Android 5 0 Lollipop 引入的新 BLE 外设模式将不会在 Nexus 4 5 或 7 上启用 https code
  • 为什么设置 MediaRecorder 时显示错误 IllegalStateException?

    我的代码设置 MediaRecorder 它显示行集质量错误 mMediaRecorder new MediaRecorder Step 1 Unlock and set camera to MediaRecorder mCamera st
  • Android 如何从我的应用程序使用 SD 卡中的文件路径预览图像

    文件存在于sdcard image jpg我想创建我自己的应用程序 活动 按下按钮时 需要使用内置图像查看器显示存储在 SD 卡中的图像 按图像查看器中的后退按钮后 它应该返回到我正在运行的应用程序 需要一些帮助 您可以为此创建一个具有适当
  • 如何将 currentTimeMillis 转换为可读的日期格式? [复制]

    这个问题在这里已经有答案了 我想用currentTimeMillis两次 这样我就可以计算持续时间 但我也想以用户可读的格式显示时间和日期 我遇到了麻烦currentTimeMillis有利于计算 但我看不到内置函数可以转换为合适的时间或时
  • Webview 中的 Java 空指针异常

    我试图搜索这个问题 但这个错误看起来与这个错误 https stackoverflow com questions 21866459 android nullpointerexception on webview 我的 google pla

随机推荐

  • 具有平方像素的 ImageView(无插值)

    我有一个 9X11 像素的位图 代表一个迷宫 路径为绿色 墙壁为黑色 开始为橙色 结束为蓝色 它的矩阵是 int map new int 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 0 1 1 1 1 1 0 1 1 0
  • 将数字字段中带有逗号的数据导入到 redshift 中

    我正在使用 SQL 将数据导入 redshiftCOPY陈述 数据在数字字段中包含逗号千位分隔符COPY声明拒绝 The COPY语句有许多选项来指定字段分隔符 日期和时间格式以及 NULL 值 但是我没有看到任何指定数字格式的内容 我是否
  • ExpressJS 服务器 - 如何处理多个域

    我在 Express 上闲逛了一下 我想知道 最正确 的方法是处理链接到同一服务器的多个域 假设我们有 foo com bar net baz com 这一切都指向111 222 333 444 该机器正在运行 NodeJS 和 Expre
  • ClickOnce 无法在 Internet Explorer 9 中运行

    My 单击一次 http en wikipedia org wiki ClickOnce部署曾经完美地工作 但它在 Internet Explorer 9 中停止工作 它只显示桌面应用程序XML 文件 它仍然有效谷歌浏览器 http en
  • “bundle exec rake db:migrate”有什么作用?

    根据我的研究 bundle exec 负责在包的上下文中执行命令 无论如何 我还不太明白它对于命令的作用有何不同rake db migrate与相比bundle exec rake db migrate 例如 在我的例子中 我执行了第一个命
  • 如何在 Ruby 中对世界杯小组表进行排序

    我正在编写一种算法来根据比赛数据创建世界杯小组表并对其进行排序 因此 给出以下匹配数据 id 1 home team Honduras away team Chile home score 0 away score 1 id 2 home
  • 如何禁用 Android 和 IOS 的复制和粘贴文本功能,该功能在 Phonegap 应用程序中长按屏幕后出现

    Phone Gap issue 如何禁用 ANDROID 以及 IOS 的默认文本复制粘贴功能 该功能在 Phonegap 应用程序中长按屏幕后出现 我提到如何禁用 jQuery Mobile iOS 中锚点的默认行为 https stac
  • 如何使用“Check”语句来验证 mysql 中的字段值?

    如何使用 Check 语句来验证 mysql 中的字段值 看这个page http dev mysql com doc refman 5 1 en create table html 手册中没有讨论check keyword In MySq
  • 具有一元运算符的 IIFE:现实世界用例[重复]

    这个问题在这里已经有答案了 我们可以假装使用一元运算符作为 IIFE 如下所示 function return 5 5 function return 5 5 function return 5 6 function return 5 fa
  • 返回第一个字符为非字母的行

    我正在尝试检索 SQlite 中以任何非字母字符开头的所有列 但似乎无法使其工作 我目前已经得到了这段代码 但它返回每一行 SELECT FROM TestTable WHERE TestNames NOT LIKE A z 有没有办法检索
  • 为什么 LinkedBlockingQueue.take() 即使有元素也会阻塞?

    我有 10 个网络爬虫 它们共享一个LinkedBlockingQueue 从 Eclipse 中的调试视图中 我发现当我获取多个 URL 大约 1000 个 时 list take 通话时间很长 它是这样工作的 private synch
  • 从lua中的函数返回多个值

    我正在尝试以下 lua 代码 function test return 1 2 end function test2 return test end function test3 return test 3 end print test p
  • 如何在ios中永远运行后台服务以同步数据

    您好 我正在开发一个应用程序 它需要在网络服务器上进行同步操作 数据提交和检索 用户可以离线提交表单 即将数据存储到设备上的本地数据库 只要网络可用 后台服务就应该将这些数据提交到网络服务器 后台服务具体需求如下 后台服务会先检查网络是否可
  • Bluecove:以编程方式重新启动蓝牙堆栈

    我正在尝试关闭蓝牙服务 但 Bluecove 在连接关闭方法上有错误 https code google com p bluecove issues detail id 90 https code google com p bluecove
  • 如何编写能够验证 URI 的正则表达式模式?

    一个人如何着手创作一部正则表达式与所有有效 URI 字符串匹配 但无法与所有无效 URI 字符串匹配 为了具体说明我在提到 URI 时所指的内容 我在下面添加了最新 URI RFC 标准的链接 它定义了我想要使用正则表达式验证的实体 我不需
  • 如何在cpanel上托管Spring boot应用程序?

    我有一个 Spring boot 应用程序 我想将其托管在我的 VPS 服务器 cpanel 中 我正在使用最新版本的 cpanel 和 WHM 以及 easyapache 4 我完全按照该网站上的步骤操作 https dzone com
  • 在 AWK 脚本输出中的字段周围添加双引号吗?

    我编写了一个 awk 脚本 它将分发器平面文件转换为可导入 Magento 的 CSV 该文件以分号分隔 它没有像进口商要求的那样在每个字段周围加上引号 它工作得相当好 但在没有包含双引号的情况下导致数据导入出现一些问题 我花了几个小时试图
  • 使用 ReactiveCocoa 从对象数组链接异步操作

    我有一个实体数组 我想对这些实体执行异步操作 这些操作应该链接起来 并以与数组中的实体相同的顺序运行 我是 RAC 新手 在 RAC 中如何做到这一点 首先 您需要一个执行异步操作的包装方法 该方法将返回一个信号 我们假设异步操作需要一个完
  • std::max - 需要一个标识符

    我有问题std max 我想不通 int border 35 int myInt 2 int myOtherInt 3 int z std max myInt 2 border myOtherInt 2 border 我已经包含了算法标准头
  • 操作栏后退按钮不起作用

    在这些的帮助下安卓文档 http developer android com training implementing navigation ancestral html NavigateUp 我正在尝试做一个操作栏后退按钮 我得到一个操