小编Sef*_*an2的帖子

将自定义子视图(在xib中创建)添加到视图控制器的视图中 - 我做错了什么

我在xib中创建了一个视图(带有活动指示器,进度视图和标签).然后我创建了.h/.m文件:

#import <UIKit/UIKit.h>

@interface MyCustomView : UIView {
    IBOutlet UIActivityIndicatorView *actIndicator;
    IBOutlet UIProgressView *progressBar;
    IBOutlet UILabel *statusMsg;
}

@end

#import "MyCustomView.h"

@implementation MyCustomView    

- (id)initWithFrame:(CGRect)frame {
    if ((self = [super initWithFrame:frame])) {
        // Initialization code
    }
    return self;
}

- (void)dealloc {
    [super dealloc];
}

@end
Run Code Online (Sandbox Code Playgroud)

在IB中,我将文件的所有者和查看标识设置为MyCustomView并将IBOutlet连接到文件的所有者

在MyViewController.m中,我:

- (void)viewDidLoad {

    [super viewDidLoad];   

    UIView *subView = [[MyCustomView alloc] initWithFrame:myTableView.frame];
    [subView setBackgroundColor:[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.5]];

    [myTableView addSubview:subView];
    [subView release];
}
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,视图已添加,但我看不到标签,进度条和活动指示器.

我究竟做错了什么?

objective-c xib addsubview ios

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

使用仪器 - 用设备泄漏

我开始在iPhone 3G上使用Instruments-Leaks.当我尝试使用iPhone上的Instruments运行应用程序时,我获得了

Target failed to run: Remote exception encountered: 'Failed to get task for pid 280'
Run Code Online (Sandbox Code Playgroud)

想法?

我用仪器运行应用程序的唯一一次运行速度非常慢,我无法测试它.在搜索泄漏的设备上运行应用程序的步骤是什么?

memory-leaks instruments memory-leak-detector ios

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

info.plist中"Localization native development region"条目的含义是什么?

我不知道我是否真的理解info.plist文件中"Localization native development region"条目的功能.

在某处我读到这个条目允许在没有与语言资源目录匹配时指定应用程序语言.

我有一个以三种语言本地化的应用程序:英语,意大利语和西班牙语(en.lproj,it.lproj和es.lproj),我将"Localization native development region"条目设置为意大利语.当我在"设置"中更改语言和语言环境时(例如通过选择阿拉伯语和适当的区域),应用程序语言是英语.我不应该是意大利语,因为我在info.plist中将"本地化本地开发区域"设置为意大利?

有任何想法吗?它可以绑定到AppStore应用程序描述语言吗?

info.plist ios

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

jQuery和css:使用某个css类隐藏/显示选择选项

在html代码中我选择了这样的选项:

  <option value="1" class="myclass5">Value1</option>
Run Code Online (Sandbox Code Playgroud)

在jQuery中:

var cod = $(this).val(); // This is the value of another select: when the value 
$("option[class^=myclass]").hide();
$("option[class^=myclass]").each(function () {
    $("option[class^=myclass" + cod + "]").show();
});
Run Code Online (Sandbox Code Playgroud)

编辑

我有两个选择.当我在第一个选择中选择一个值时,必须相应地填充第二个值(我必须阻止ajax调用).

我将所有第二个选择值放在会话var中,但我的问题是只选择那些与第一个选择相关的值,所以我试图通过css类.

EDIT2

<select name="firstselect">
   <option value="0" selected="selected">Choose...</option>
   <option value="1">Value1</option>
   <option value="2">Value2</option>
   <option value="3">Value3</option>
</select>

<select name="secondselect">
   <option value="0" selected="selected">Choose...</option>
   <option value="myclass1">Value11</option>
   <option value="myclass1">Value12</option>
   <option value="myclass1">Value13</option>
   <option value="myclass2">Value21</option>
   <option value="myclass2">Value22</option>
   <option value="myclass2">Value23</option>
   <option value="myclass3">Value31</option>
   <option value="myclass3">Value32</option>
   <option value="myclass3">Value33</option>
</select>
Run Code Online (Sandbox Code Playgroud)

EDIT3

对我来说,greenish的解决方案很好,但IE上有一个问题,我没有成功解释:当我使用后退按钮时,用户选择的值是"丢失",也就是说,如果我登录控制台的用户选中的值,我在新的克隆选择中看到它的"索引".在html源代码中,有整个原始选择.

EDIT4

我解决了这篇文章

https://forum.jquery.com/topic/jquery-select-box-selectedindex-problems-in-internet-explorer-ie-on-refresh-and-back-buttons

css jquery html-select show-hide

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

在文本字段中插入一个字符后启用完成按钮:textFieldDidEndEditing:或textFieldShouldBeginEditing:或?

当用户在uitextfield中写入至少一个字符时,我想在导航栏上启用完成按钮(在模态视图中).我试过了:

  • textFieldDidEndEditing:当前一个uitextfield重新响应第一个响应者时启用该按钮(所以在当前uitextfield中使用零个字符).
  • textFieldShouldBeginEditing:当textfield成为第一个响应者时调用.还有另一种方法吗?

[编辑]

解决方案可能是

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
Run Code Online (Sandbox Code Playgroud)

但都没有

 [self.navigationItem.rightBarButtonItem setEnabled:YES];
Run Code Online (Sandbox Code Playgroud)

要么

[doneButton setEnabled:YES]; //doneButton is an IBOutlet tied to my Done UIBarButtonItem in IB
Run Code Online (Sandbox Code Playgroud)

工作.

iphone uibarbuttonitem ios uitextfielddelegate

13
推荐指数
2
解决办法
7838
查看次数

Java:对String数组进行排序,其字符串表示int

我有String[]阵列喜欢

{"3","2","4","10","11","6","5","8","9","7"}
Run Code Online (Sandbox Code Playgroud)

我想按数字顺序对其进行排序,而不是按字母顺序排序.

如果我使用

Arrays.sort(myarray);
Run Code Online (Sandbox Code Playgroud)

我知道了

{"10","11","2","3","4","5","6","7","8","9"}
Run Code Online (Sandbox Code Playgroud)

代替

{"2","3","4","5","6","7","8","9","10","11"}
Run Code Online (Sandbox Code Playgroud)

java sorting

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

导航栏的横向模式问题

我有一个ViewController管理一个视图,其中我有一个表视图,一个ImageView和一个导航栏.当我把它放在横向模式时导航栏没有调整到32,它仍然保持到44我首先尝试在IB中使用自动调整但没有成功,然后我尝试将此代码放在ViewController中

- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)orientation duration:(NSTimeInterval)duration {
    //[super willAnimateRotationToInterfaceOrientation:orientation duration:duration];
    CGRect frame = self.navigationController.navigationBar.frame;
    if (UIInterfaceOrientationIsPortrait(orientation)) {
         frame.size.height = 44;
    } else {
         frame.size.height = 32;
    }
    self.navigationController.navigationBar.frame = frame;
}
Run Code Online (Sandbox Code Playgroud)

但没什么.我该如何解决这个问题?

landscape uinavigationbar ios

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

删除选项,选择值大于0

我想从id ="myid"的select中删除所有选项(但第一个值为value = 0).

我不会使用empty()然后追加().

jquery

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

Tomcat连接池配置:DataSource类型和"Too many connection"错误

我通过JNDI资源使用tomcat连接池.

context.xml:

<Resource name="jdbc/mydb" auth="Container" type="javax.sql.DataSource"
          username="root" password="root" driverClassName="com.mysql.jdbc.Driver"
          maxActive="1000" maxIdle="100" maxWait="10000"
          url="jdbc:mysql://localhost:3306/mydatabase" 
          factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" />
Run Code Online (Sandbox Code Playgroud)

web.xml:

<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mydb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
Run Code Online (Sandbox Code Playgroud)

从我需要数据库连接的java类中,我执行以下查找:

Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/mydb");
Run Code Online (Sandbox Code Playgroud)

我的第一个疑问是DataSource类型.是否使用相同javax.sql.DataSourceorg.apache.tomcat.jdbc.pool.DataSource

而且,有时我会收到"Too many connections"错误.我已经阅读了很多有关此问题的stackoverflow问题/答案,但我没有成功地理解问题所在.

我已经关注了tomcat文档,并且我正确地关闭了结果集,语句和连接.

编辑

我的tomcat版本是7.0.26.所以应该有一个bug(参见informatik01用户建议的链接)

java mysql tomcat database-connection connection-pooling

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

Laravel 5.2:如果设置了cookie,则通过刀片检索cookie也会返回null

my_cookie通过Javascript 设置了一个cookie

   function createCookie(name, value, days) {
      var expires;
      if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        expires = "; expires="+date.toUTCString();
      }
      else {
        expires = "";
      }
      document.cookie = name+"="+value+expires+"; path=/";
   }

   ....
   createCookie('my_cookie', 1, 365);
   ....
Run Code Online (Sandbox Code Playgroud)

通过Chrome Cookie Inspector我看到cookie是使用值1创建的.

通过Laravel Blade我试过:

 @if (Cookie::get('my_cookie') !== null) // or Cookie::get('my_cookie') == 1 or Cookie::get('my_cookie') == '1'
      <p>set</p>
 @else
      <p>unset</p>
 @endif
Run Code Online (Sandbox Code Playgroud)

写道 unset

 @if (request()->cookie('my_cookie') == '1') // or @if (request()->cookie('my_cookie') == 1)
      <p>set</p>
 @else
      <p>unset</p>
 @endif
Run Code Online (Sandbox Code Playgroud)

结果总是如此 …

cookies laravel-5.2 laravel-blade

5
推荐指数
3
解决办法
4636
查看次数