小编gol*_*ove的帖子

在Interface Builder中使用泛型类作为自定义视图

我有一个UIButton的自定义子类:

import UIKit

@IBDesignable
class MyButton: UIButton {

    var array : [String]?

}
Run Code Online (Sandbox Code Playgroud)

它是IBDesignable,我已将其设置为故事板中其中一个按钮的自定义类.我想使它通用,以便数组不必是String对象之一.所以,我试过这个:

import UIKit

@IBDesignable
class MyButton<T>: UIButton {

    var array : [T]?

}
Run Code Online (Sandbox Code Playgroud)

但是,我不确定如何将其设置为IB中的班级.我尝试使用MyButton<String>MyButton<Int>,但Interface Builder只删除尖括号部分并获得以下编译错误:

Command /Applications/Xcode6-Beta4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift failed with exit code 254
Run Code Online (Sandbox Code Playgroud)

有没有办法使用通用自定义类,还是不支持?

generics interface-builder ios swift xcode6

21
推荐指数
1
解决办法
5718
查看次数

无论大型contentSize如何,UIScrollView都不会滚动

我创建了一个UIScrollView并在Interface Builder中添加了子视图,但是我无法滚动它.我看过其他类似的问题,但我已经适当地设置了我的contentSize.事实上,我甚至尝试过设置令人难以置信的大型内容,但它无法发挥作用.我错过了什么?请注意,UIScrollView是一个IBOutlet:

@property (strong, nonatomic) IBOutlet UIScrollView *scroll;
Run Code Online (Sandbox Code Playgroud)

这是在我的viewDidLoad中:

self.scroll.scrollEnabled = YES;
[self.scroll setContentSize: CGSizeMake(2400,8000)];
Run Code Online (Sandbox Code Playgroud)

以下是Interface Builder的屏幕截图:

查看heirarchy

scrollview及其在界面构建器中的子视图

引用插座

这是运行时的视图,但任何时候在水平或垂直滚动​​的任何尝试都不起作用.

跑步时的屏幕

objective-c uiscrollview ios contentsize

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

Git将我的分叉分支在上游主服务器上

Github上的某个用户拥有一个包含单个主分支的存储库.我已将该存储库分配到我自己的帐户中.我在自己的分叉存储库上创建了一个新分支,并对其进行了一些更改.

上游用户已将更改提交给其主服务器.我希望通过这些更改来更新我的主人.另外,如果我理解rebase正确,我想要rebase那个主人的分支.我不想与master合并,因为我还没有完成我的分支.注意:上游更改的文件与我在分支中更改的文件不同,因此不应存在冲突.

我尝试过以下方法:

上游用户的更改提取到我的本地仓库中:
git pull upstream master

更改从我的本地主人送到我的分叉主人:
git push origin master

我在我当地的主人那里重新定位了当地的分支:
git checkout mybranch
git rebase master

我试图我重新定位的本地分支送到我的分支分支:
git push origin mybranch

但是,我收到以下错误:

To https://github.com/myusername/myforkedrepository.git
 ! [rejected]        mybranch -> mybranch (non-fast-forward)
error: failed to push some refs to 'https://github.com/myusername/myforkedrepository.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. …
Run Code Online (Sandbox Code Playgroud)

git push github rebase git-fork

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

Eclipse中不需要的死代码警告

以下代码在Eclipse中给出了一个"死代码"警告:

private void add(Node<E> n, E element) {
        Node<E> e = new Node<E>(element);
        if (n == null)
            root = e;
        else if (n.compareTo(e) > 0)
            if (n.hasLeft())
                add(n.getLeft(), element);
            else
                n.setLeft(e);
        else if (n.hasRight())
            add(n.getRight(), element);
        else
            n.setRight(e);
        balance(e);
    }
Run Code Online (Sandbox Code Playgroud)

警告出现在说明的那一行root = e;.

我查了死代码,发现代码帽没有效果,因此会被java编译器忽略.

但是,这个root是我班级中的私有字段,因此我的程序功能是必要的.

编译器真的会忽略这个吗?我怎么能阻止它?为什么它认为它是死代码?

java eclipse dead-code

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

单击时PowerPoint文本更改

我有几个文本框.

他们说:

Fruit 1
Fruit 2
Fruit 3
Run Code Online (Sandbox Code Playgroud)

单击每个文本时,文本应相应更改为:

Apple
Banana
Dragonfruit
Run Code Online (Sandbox Code Playgroud)

当单击其中一个时,我希望它更改为相应的文本,但其他文本保持不变.

有没有办法做到这一点,而不只是超链接一堆幻灯片?(那将是8张幻灯片,顺便说一句).我假设一个替代方法将不得不使用VBA编码,但我宁愿没有.

powerpoint hyperlink powerpoint-vba

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

你如何返回一个解除引用的数组?

我希望做类似以下的事情:

public static int[] plusOneLengthFour(int[] arr) {
  return {arr[0]+1,arr[1]+1,arr[2]+1,arr[3]+1};
}
Run Code Online (Sandbox Code Playgroud)

但是在编译时,我收到以下错误:

TestClass.java:5: error: illegal start of expression
        return {arr[0]+1,arr[1]+1,arr[2]+1,arr[3]+1};
Run Code Online (Sandbox Code Playgroud)

这有什么不对?

java arrays return

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

添加getter会使用下划线不正确的语法

我有一个带有以下标题的类:

#import <Foundation/Foundation.h>

@interface CustomClass : NSObject

@property (strong, nonatomic) NSString *foo;

@end
Run Code Online (Sandbox Code Playgroud)

使用以下实现不会显示任何错误:

#import "CustomClass.h"

@implementation CustomClass

- (void) setFoo:(NSString *)foo {
    _foo = foo;
}

@end
Run Code Online (Sandbox Code Playgroud)

作为Objective-C的完全初学者,当我在实现中添加以下方法时,我感到困惑:

- (NSString *)foo {
    return _foo;
}
Run Code Online (Sandbox Code Playgroud)

因为现在方法中存在错误use of undeclared identifier 'title',它建议我更改_foofoo.它不仅表示在新添加的方法中,它还在之前的setter方法中说明了它.我试图查看情况,但我没有找到满意的答复.相关问题请谈@synthesize,但我已经读到没有必要,所以我不确定问题是什么.

提前致谢!
-GoldDove

xcode properties objective-c getter-setter synthesize

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

返回if语句导致无法访问的代码错误

以下代码:

public static void print(ListNode p)
{
    System.out.print("[");
    if(p==null);
    {
        System.out.println("]");
        return;
    }
    ListNode k = p.getNext();
    //more code
}
Run Code Online (Sandbox Code Playgroud)

导致以下编译错误:

 ----jGRASP exec: javac -g Josephus_5_Rajolu.java

Josephus_5_Rajolu.java:53: error: unreachable statement
            ListNode k = p.getNext();
                     ^
1 error

 ----jGRASP wedge2: exit code for process is 1.
 ----jGRASP: operation complete.
Run Code Online (Sandbox Code Playgroud)

为什么会这样?我只返回p = null.如果p!= null,我想做我的其他代码.为什么无法访问?

java if-statement compiler-errors return unreachable-statement

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

prepareForSegue:sender:永远不会被调用

我正在学习构建简单iOS应用程序教程.

我目前正在详细信息场景章节中显示信息.

最后它说我现在应该可以运行该应用程序了.但是,当我运行它并点击主uitableview中的一行时,它只是突出显示蓝色但不会偏离细节uitableview.

所以我在prepareForSegue:sender:方法中放了一个NSLog,它永远不会被调用.

另外,我不记得在按下一行时告诉Xcode(在故事板和任何代码中都没有).

我是否错过了教程的一部分或教程是否遗漏了什么?或者我在某个地方犯了一个愚蠢的错误?请帮我弄清楚如何激活segue.

提前致谢!

objective-c uitableview ios segue

0
推荐指数
1
解决办法
4923
查看次数