标签: navigationcontroller

我们可以在iOS中创建多个导航控制器吗?

我对导航控制器有点困惑.在一个导航控制器中,存在大量视图控制器.我看过很多带有一个导航控制器的例子.我们可以在iOS和每个导航控制器中创建多个导航控制器,我们可以定义多个视图控制器吗?可能吗?如果有可能的话,请有人向我解释并提供一些真实世界的例子.提前致谢.

viewcontroller navigationcontroller ios5 xcode4.2

4
推荐指数
1
解决办法
5014
查看次数

IOS.如何在.xib中嵌入NavigationController?

我有.xib(不是.storyboard)文件,其中我有UIView,里面也有UITableView.所以,现在我想添加导航功能,但是我不能像本教程中那样嵌入导航控制器http://www.appcoda.com/use-storyboards-to-build-navigation-controller-and-table-view/ 因为我使用.xib而不是.storyboard.如何在我的应用中添加导航功能?

xib navigationcontroller ios

4
推荐指数
1
解决办法
5522
查看次数

iPhone回来按钮文字

对不起另一个新手问题.

我试图在viewDidLoad中获取后退按钮文本值,但是当我浏览控制器时它总是显示为null.

NSLog(@"-----------> %@ ", self.navigationItem.backBarButtonItem.title);
Run Code Online (Sandbox Code Playgroud)

如何获取后退按钮文本值?

iphone navigationcontroller

3
推荐指数
1
解决办法
1509
查看次数

应用程序崩溃,没有任何日志消息

在我的应用程序中,我有一个UIViewController,由另一个ViewController的导航控制器推送.它包含一些视图,按钮,scrollView和加速度计支持.当我敲击navigationController的"返回"按钮,应用程序崩溃,没有任何日志消息,除了这一个:"警告:无法读取符号/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.3.3(8J2)/符号/开发者/usr/lib/libXcodeDebuggerSupport.dylib(找不到文件).(gdb)"调试器将我链接到main.m中的这一行:

int retVal = UIApplicationMain(argc, argv, nil, nil);
Run Code Online (Sandbox Code Playgroud)

用"EXEC_BAD_ACCESS"这是什么意思?

编辑: 大家都是对的.问题出在加速度计上.我设置了委托([UIAccelerometer sharedAccelerometer] .delegate = self;)并没有删除它.这就是我的代码中没有用于链接的调试器的行的原因.我刚添加了这个:

 - (void)viewWillDisappear:(BOOL)animated {
        [UIAccelerometer sharedAccelerometer].delegate = nil;
    }
Run Code Online (Sandbox Code Playgroud)

问题消失了.因此,如果您正在使用任何设备功能,请小心代表.

iphone crash exc-bad-access objective-c navigationcontroller

3
推荐指数
1
解决办法
343
查看次数

当调用navigationController popViewControllerAnimated时,不会调用viewController的dealloc

我有一个MyViewController,它基于UIViewController,我使用它像下面的代码:

MyViewController *nextViewController = [[MyViewController alloc] init]; [self.navigationController pushViewController:nextViewController animated:YES]; [nextViewController release];

在具有用户事件的MyViewController中,具有以下代码:

[self.navigationController popViewControllerAnimated:YES];

现在,我发现,MyViewController的dealloc不会被调用,但是,当我将App切换到后台时,例如,传递home按钮,dealloc方法已被调用!这个大问题!当用户转到MyViewController并且一次又一次地返回时,会有很多MyViewController不会被释放,而且只有当App转到后台时才会释放大量内存.

所以,有人可以帮我解决这个问题,谢谢!

memory-leaks dealloc navigationcontroller ios popviewcontrolleranimated

3
推荐指数
1
解决办法
3304
查看次数

ViewController如何知道它专注于iOS?像"viewDidLoad"

我有一个NavigationController,其中一个选项卡应该加载一个ViewController.

这个ViewController(1)加载到"viewDidLoad"时会做一些事情,然后推送一个新的ViewController(2).问题是,在ViewController(1)已经通过viewDidLoad之后,它将不会再次通过它,除非重新启动应用程序.

你们可以请一个聪明的方法来参考吗?

这就是我真正在做的事情:

- (void)viewDidLoad
{
    // Keep track of cash using NSUserDefaults
    BOOL dreceived[63];
    int rightData;

    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    //Load cash switches
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    NSData *data = [prefs objectForKey:@"dreceived"];
    memcpy(&dreceived, data.bytes, data.length);

    for(int n = 72; n >= 1; n = n - 1)
    {
        if(dreceived[n-1]==1)
        {
            rightData = n;            

        }
    }
    NSLog(@"Right Data %d", rightData);

    CashItem *c = [cashflow objectAtIndex:rightData];

    // Go for …
Run Code Online (Sandbox Code Playgroud)

xcode viewdidload viewcontroller navigationcontroller ios

3
推荐指数
1
解决办法
4590
查看次数

如何使用NavigationController隐藏iOS7上的后退按钮标题

我有一个基于NavigationController的iOS7应用程序,在此我想要隐藏与雪佛龙一起显示的后退按钮文本.有没有办法解决这个问题?我尝试将空字符串设置为后退按钮标题,在前一个视图上尝试空标题,似乎如果它找到空标题,则用"后退"文本替换它.

请帮忙

谢谢

navigationcontroller ios7

3
推荐指数
2
解决办法
5625
查看次数

导航控制器从 startDestination 片段导航获取异常

java.lang.IllegalArgumentException: ID does not reference a View inside this Activity

    mBtHome.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {



                    Navigation.findNavController(getActivity(), R.id.homePageFragment);
                }
            });  
Run Code Online (Sandbox Code Playgroud)

startDestination 片段中的 mBtHome 按钮

导航图 xml 文件。

<navigation xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/nav_file"
    app:startDestination="@id/mainFragment">
    <fragment
        android:id="@+id/mainFragment"
        android:name="com.example.libin.navigationhelphertest.ui.main.MainFragment"
        android:label="main_fragment"
        tools:layout="@layout/main_fragment">
        <action
            android:id="@+id/action_mainFragment_to_homePageFragment"
            app:destination="@id/homePageFragment" />
        <action
            android:id="@+id/action_mainFragment_to_usersListFragment"
            app:destination="@id/usersListFragment" />
    </fragment>
    <fragment
        android:id="@+id/homePageFragment"
        android:name="com.example.libin.navigationhelphertest.ui.main.HomePageFragment"
        android:label="fragment_home_page"
        tools:layout="@layout/fragment_home_page" />
    <fragment
        android:id="@+id/usersListFragment"
        android:name="com.example.libin.navigationhelphertest.ui.main.UsersListFragment"
        android:label="fragment_users_list"
        tools:layout="@layout/fragment_users_list" />
</navigation>
Run Code Online (Sandbox Code Playgroud)

在 MainActivity xml 文件中添加导航/nav_file NavHostFragment 也包括在内,还添加了 defaultNavHost="true"

android navigationcontroller android-jetpack android-architecture-navigation

3
推荐指数
1
解决办法
7931
查看次数

IllegalArgumentException:无法从当前目的地找到导航操作/目的地包名/action_xxx

当我尝试在 viewpager 中从一个 Fragment 导航到另一个 Fragment 时,我遇到了 Android 导航架构组件的问题,出现此错误:

java.lang.IllegalArgumentException: Navigation action/destination 
com.gigaweb.mysales:id/action_mainFragment_to_addTransactionFragment cannot be found from the current 
destination Destination(com.gigaweb.mysales:id/pagerFragment) label=fragment_pager class=com.gigaweb.mysales.PagerFragment
Run Code Online (Sandbox Code Playgroud)

我有一个 viewpager,我用它在两个 Fragment 之间导航,它工作得很好。问题是我在其中一个片段中有一个按钮,该按钮还用于使用导航控制器导航到另一个片段,当单击该按钮时,应用程序崩溃并出现上述错误。

下面是错误截图

更新这是导航图

如您所见,SignIn Fragment 是起始目的地,并且有一个动作喜欢它作为 ViewPager 的宿主的 pagerFragment

我希望应用程序的工作方式是:

  1. 当应用程序启动时显示登录片段......工作

  2. 单击登录按钮时导航到 PagerFragment ..... 工作

  3. 通过向左或向右滑动,在 MainFragment 和 AdminFragment 之间导航..... 工作

  4. 单击 FAB 按钮后导航到 AddTransactionFragment .....不工作!!单击按钮时,应用程序崩溃。

更新这里是导航图的 XML 代码

<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/nav_graph"
app:startDestination="@id/signInFragment">

<fragment
    android:id="@+id/signInFragment"
    android:name="com.gigaweb.mysales.SignInFragment"
    android:label="fragment_sign_in"
    tools:layout="@layout/fragment_sign_in" >
    <action
        android:id="@+id/action_signInFragment_to_pagerFragment"
        app:destination="@id/pagerFragment" />
</fragment>
<fragment
    android:id="@+id/addTransactionFragment" …
Run Code Online (Sandbox Code Playgroud)

java android navigationcontroller

3
推荐指数
1
解决办法
4517
查看次数

'NSInternalInconsistencyException',原因:'+ entityForName:无法找到实体名称的NSManagedObjectModel

我有一个基于窗口的应用程序,其中集成了标签栏和导航栏.在导航栏上有一个自定义按钮,用于打开表格视图.

在单击表格的单元格时,我想打开一个新的表格视图控制器.但是一旦我点击第一个表格的单元格,我就会得到一个例外

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '+entityForName: could not locate an NSManagedObjectModel for entity name 'AddForm''
Run Code Online (Sandbox Code Playgroud)

我检查过那AddForm是对的地方.

我已经尝试了上面给出的所有解决方案和其他线程,但仍然卡住了.我希望有一个人可以帮助我.

流程是这样的

ListButton(单击打开列表视图) - >打开表视图 - >(单击一个单元格应该打开一个新的表视图控制器并从核心数据中获取数据)

我的根视图控制器代码在第二个表视图控制器文件中...是我做错了什么?我这样做是因为我之前不需要核心数据....

请帮忙

提前致谢

core-data tabbar viewcontroller navigationcontroller nsmanagedobjectcontext

2
推荐指数
1
解决办法
7380
查看次数