标签: activitygroup

Android 1.6&Fragment&Tabhost

我正在努力升级Android应用程序(1.6兼容性),该应用程序使用a TabHost来显示3个带有嵌套活动的不同选项卡.

当时我使用ActivityGroup技巧在选项卡中显示嵌套活动,但我对这种方法非常不满意,因为处理某些功能真的很痛苦.

我听说过针对1.6的Fragments API兼容包,Fragment看起来非常适合我想要做的事情(在带有过渡效果和东西的标签中显示嵌套视图/功能)但是我不能让它与它一起工作TabHost(它的意思是使用,Action Bar但在兼容包中没有.

你们有没有人找到在你的应用程序中创建这样一个结构的方法?

我的错误是:

ERROR/AndroidRuntime(955): Caused by: java.lang.RuntimeException: Unable
Run Code Online (Sandbox Code Playgroud)

启动活动ComponentInfo {com.XXX}:java.lang.IllegalArgumentException:找不到片段MyFragment的id 0x1020011的视图

main.xml中

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:layout_weight="1" />

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0" />

    </LinearLayout>

</TabHost>
Run Code Online (Sandbox Code Playgroud)

MainActivity.java

public class MainActivity extends TabActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        Resources res = getResources();
        final TabHost tabs = getTabHost(); 
        TabHost.TabSpec spec;
        Intent i;

        i …
Run Code Online (Sandbox Code Playgroud)

java android android-tabhost activitygroup android-fragments

16
推荐指数
1
解决办法
9915
查看次数

Android:AsyncTask ProgressDialog不会在ActivityGroup中打开

我正在尝试在轮询我的服务器时打开一个进度对话框.该类是一个ActivityGroup,因为它嵌套在选项卡栏中.要在框架内保持视图,需要ActivityGroup.这是我的ActivityGroup类的声明:

   public class CheckInActivity extends ActivityGroup{
        ...
        public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.checkin);
            new LocationControl().execute(this);
Run Code Online (Sandbox Code Playgroud)

现在我的AsyncTask类在同一个CheckInActivityClass中:

private class LocationControl extends AsyncTask<Context, Void, Void>
    {
        private final ProgressDialog dialog = new ProgressDialog(CheckInActivity.this);

        protected void onPreExecute()
        {
            this.dialog.setMessage("Determining your location...");
            this.dialog.show();
        }
Run Code Online (Sandbox Code Playgroud)

当我运行给定的应用程序时,它通过与WindowManager $ BadTokenException相关的错误.说明它无法使用未知令牌启动窗口.我尝试制作一个只是常规Activity(而不是ActivityGroup)的示例应用程序,它运行得很好.

有没有人知道如何修改它以使其工作,或解决方法将允许进度条嵌套在选项卡栏中?任何帮助是极大的赞赏.

android progressdialog activitygroup android-asynctask

14
推荐指数
1
解决办法
3290
查看次数

来自ActivityGroup的startActivityForResult?

尝试从活动组启动活动时,我似乎无法获得任何结果.我在活动和活动组中放了一个onactivityresult?具体来说,我试图让用户从Intent.ACTION_GET_CONTENT中选择一张照片/视频,但我从来没有得到任何回报?我究竟做错了什么?

以下是我调用代码的方法:

Intent pickMedia = new Intent(Intent.ACTION_GET_CONTENT);
   pickMedia.setType("video/*");
   startActivityForResult(pickMedia,12345);
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

android activitygroup

9
推荐指数
1
解决办法
6424
查看次数

在ActivityGroup中暂停和恢复子活动

我正在尝试创建一个自定义的ActivityGroup.除了组子活动的活动生命周期方法之外,我正在使一切正常工作.当我们的子活动进入/退出焦点时如何调用onResume/onPause方法?

我知道tabActivity这样做但我在查看代码时无法找到.

提前致谢!

resume android activitygroup android-activity

7
推荐指数
1
解决办法
1013
查看次数

Android Fragment vs. Activity Group

嘿伙计们我正在开发一个Android应用程序,我想为每个选项卡实现一个活动组.但由于不推荐使用Activity Group,我必须使用Fragments.我搜索了最后几天并对该主题进行了一些研究,但我仍然没有得到它.下图描述了我想要做的事情.我也是直接来自iOS,我需要一些关于我的理论的反馈.

在此输入图像描述

正如您所看到的,每个Fragment都包含一个WebView Fragment.当用户单击该WebView片段中的链接时 - 请求被捕获并且替换了新的片段,该片段再次保存WebView并加载在前一片段中单击的链接.在某一点上,用户决定返回第一个片段并按下后退按钮.

片段应以相反的顺序从堆栈中弹出,直到他再次看到第一个片段.理想情况下,每个Fragment应该保存他的instancestate,这样当用户返回时,WebView不需要再次加载该站点.

我遇到了ActionBar Sherlock,它提供了一个关于Fragments选项卡的例子.还有片段堆栈的示例.将这两个示例组合起来是理想的,这样每个选项卡都包含一个Fragment Stack.

我的代码结构如下所示:

我的TabHost片段

public class MyActivity extends SherlockFragmentActivity {
static TabHost mTabHost;
static TabManager mTabManager;

public static int THEME = R.style.Theme_Sherlock_Light;

@Override
protected void onCreate(Bundle savedInstanceState) {
    setTheme(THEME); //Used for theme switching in samples
    super.onCreate(savedInstanceState);

    setContentView(R.layout.fragment_tabs);
    mTabHost = (TabHost)findViewById(android.R.id.tabhost);
    mTabHost.setup();
    mTabManager = new TabManager(this, mTabHost, R.id.myRealTabContent);

    // adding some Fragment Tabs
    mTabManager.addTab(mTabHost.newTabSpec(tabNames[i]).setIndicator(tabNames[i]),
                FragmentStackSupport.CountingFragment.class, bundle);


    if (savedInstanceState != null) {
        mTabHost.setCurrentTabByTag(savedInstanceState.getString("tab"));
    }
}


@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString("tab", mTabHost.getCurrentTabTag()); …
Run Code Online (Sandbox Code Playgroud)

android android-tabhost activitygroup android-fragments

7
推荐指数
1
解决办法
2941
查看次数

Android:在一个屏幕中查看两个活动

我正在寻找最简单的方法来同时显示两个活动,以便一个活动始终保持可见,另一个活动随用户交互而改变.

换一种说法:

  • 我目前有一个包含多个活动的程序的代码.
  • 用户可以在这些活动之间导航.
  • 我想添加一个新的Activity,它将始终与我已有的一起显示.
  • 当用户从当前Activity导航到另一个Activity时,这个新的"side Activity"将保持可见.

我已经看到许多不同的想法做类似的事情,但无法使它们适应我的需要.

任何帮助,将不胜感激.

android activitygroup android-activity

6
推荐指数
1
解决办法
8451
查看次数

带动画的ActivityGroup切换视图

所以我有这个ActivityGroup,其中我展示了2个活动.当我正在切换时我希望有这种过渡效果,当前视图向左滑出屏幕,新视图从右侧进入.这是我的切换代码,假设当前视图是viewA:

Intent i = new Intent(this, ViewA.class);
viewB = getLocalActivityManager().startActivity("viewb", i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
setContentView(viewB);
Run Code Online (Sandbox Code Playgroud)

现在当我执行以下操作时,将显示viewB的背景,并且viewB的内容会滑入,这不是我想要的:

Animation animIn = AnimationUtils.loadAnimation(this, R.anim.righttoleftin);
viewB.startAnimation(animIn);
Animation animOut = AnimationUtils.loadAnimation(this, R.anim.righttoleftout);
viewA.startAnimation(animOut);

setContentView(viewB);
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?


实际上,上面的确有效.我有一个问题,我认为viewA被显示,而事实并非如此.

animation android activitygroup

6
推荐指数
1
解决办法
1544
查看次数

ActivityGroup已弃用

我正在制作包含三个选项卡的android应用程序..在第三个选项卡上有登录屏幕..

当我点击登录按钮...我想用包含列表视图和注销按钮的活动替换活动....

以前我使用Activity Group来替换活动.但是现在已经弃用了活动组.

现在我该如何替换第三个标签下的活动?

我正在使用这些代码

Intent intent = new Intent(MyApp.this, LoginPage.class);

                    replaceContentVieww("activity4", intent);



  public void replaceContentVieww(String id, Intent newIntent) {
                    // TODO Auto-generated method stub


View view = getLocalActivityManager().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView(); 
                            setContentView(view);


                    }
Run Code Online (Sandbox Code Playgroud)

有一个链接,我知道这个类已被弃用.

android logout tabbar activitygroup

5
推荐指数
1
解决办法
6794
查看次数

在Android中正确管理带有ActivityGroup或Fragments等的Tabbar?

我在我的一个示例应用程序中使用带有ActivityGroup的Tabbar.以下是我的申请结构

Tab1 -> ParentActivity1 -> ChildActivity_11 -> ChildActivity_12
Tab2 -> ParentActivity2 -> ChildActivity_21 -> ChildActivity_22
Tab4 -> ParentActivity3 -> ChildActivity_31
Tab4 -> ParentActivity4 -> ChildActivity_41
Run Code Online (Sandbox Code Playgroud)

我面临的问题是,当我按下ChildActivity_12中的本机后退按钮时,它应该转到ChildActivity_11,但不知何故它将退出应用程序.有人可以告诉我这里的检查应该是什么吗?

平行如果有人可以在这里指导我在导航控件中正确管理导航,例如Tabbar with ActivityGroup,Fragments等在Android中?

navigation android tabbar activitygroup android-fragments

5
推荐指数
1
解决办法
276
查看次数

无法从ActivityGroup中的ListActivity中显示AlertDialog

我想在单击ListActivity中的项目时显示AlertDialog.我的应用程序在TabActivity的选项卡下显示ListActivity,并且AlertDialog显示没有问题.ListActivity(称为FavouritesActivity)非常直接来自Android文档,具有以下设置:

    lv.setOnItemClickListener(new OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View view,
                                    int position, long id) {

                //... code to set the strings station, number, route, and direction

                FavouritesActivity.this.confirmSend(position);
            }
        });
Run Code Online (Sandbox Code Playgroud)

然后

public void confirmSend(final int position) {
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("Are you sure?")
        .setCancelable(true)
        .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    //... some code to run here                                                              
                }
            })
        .setNegativeButton("No", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    dialog.cancel();
                }
            });
    AlertDialog alert …
Run Code Online (Sandbox Code Playgroud)

android listactivity activitygroup android-alertdialog

4
推荐指数
3
解决办法
7901
查看次数