问题列表 - 第37137页

UINavigationController如何设置标题

我有一个控制器/视图的通用项目列表,可以扩展显示自定义列表..列表和导航工作正常..但我无法更改UINavigationController的标题.在通用控制器中:

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self.view addSubview: navigationController.view];
}
- (void)setNavigationTitle: (NSString *)title
{
    NSLog(@"set title: %@", title); // this works
    self.navigationController.title = title; // Nothing works here
}
Run Code Online (Sandbox Code Playgroud)

然后,扩展类做..

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self setNavigationTitle: @"Custom list"];
}
Run Code Online (Sandbox Code Playgroud)

navigationBar仍然有"Item"作为标题:(

uinavigationcontroller ios

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

字符串中有多少个指定的字符?

采用一个字符串示例,550e8400-e29b-41d4-a716-446655440000如何计算 -这样的字符串中有多少个字符?

我目前正在使用:

int total = "550e8400-e29b-41d4-a716-446655440000".Split('-').Length + 1;
Run Code Online (Sandbox Code Playgroud)

是否有任何方法我们不需要添加1 ...就像使用Count可能?

所有其他方法如

Contains IndexOf等只返回第一位置和boolean价值,没有返回多少被发现.

我错过了什么?

c# string .net-3.5

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

非偏差返回n个随机正数(> = 0)的列表,以便它们的总和== total_sum

我正在寻找一种算法或建议来改进我的代码,以生成一个随机数列表,其总和等于某个任意数.使用我的代码,它总是有偏见,因为第一个数字往往会更高.

有没有办法让数字选择更有效率?

#!/usr/bin/python
'''
  Generate a list of 'numbs' positive random numbers whose sum = 'limit_sum'
'''

import random


def gen_list(numbs, limit_sum):
  my_sum = []
  for index in range(0, numbs):
    if index == numbs - 1:
      my_sum.append(limit_sum - sum(my_sum))
    else:
      my_sum.append(random.uniform(0, limit_sum - sum(my_sum)))

  return my_sum

#test
import pprint
pprint.pprint(gen_list(5, 20))
pprint.pprint(gen_list(10, 200))
pprint.pprint(gen_list(0, 30))
pprint.pprint(gen_list(1, 10))
Run Code Online (Sandbox Code Playgroud)

输出

## output

[0.10845093828525609,
 16.324799712999706,
 0.08200162072303821,
 3.4534885160590041,
 0.031259211932997744]

[133.19609626532952,
 47.464880208741029,
 8.556082341110228,
 5.7817325913462323,
 4.6342577008233716,
 0.22532341156764768,
 0.0027495225618908918,
 0.064738336208217895,
 0.028888697891734455,
 0.045250924420116689]

[]

[10]
Run Code Online (Sandbox Code Playgroud)

python algorithm

14
推荐指数
4
解决办法
2195
查看次数

Codeigniter:如何在codeigniter上下文中提供静态html页面

大家好我想在codeigniter上下文中提供一些静态html页面.我不想绕过base_url中的index.php文件.但是当我用户调用HTML文件时,它会显示404错误页面.我很感谢那些已经解决这个问题的人对这个主题的任何帮助.谢谢大家提前

我想要精确这些元素:

  1. 我真正的问题是为用户提供PDF文件,只在浏览器中显示一个不保存的PDF文件.所以我将PDF转换为HTML文件.输出是一个目录,其中HTML文件链接在它们之间,其他图像/按钮,CSS,js用于导航
  2. 当我把这个HTML-OUTPUT放在ci\Docs\HTML1目录中时,我可以通过这个URL localhost/ci/docs/html1/index.htm访问它.但是在我使用localhost/ci/index.php/docs/html1/index.htm的地方,我得到了一个404错误页面.
  3. 所以我将HMLT1目录移动到了Application\views目录.我仍然有同样的错误.我的.htacces看起来像这样:

    <IfModule mod_rewrite.c>
    
    RewriteEngine on
    RewriteCond $1 !^(index\.php|resources|robots\.txt)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L,QSA] 
    
    </IfModule>
    
    Run Code Online (Sandbox Code Playgroud)

谢谢大家帮助

codeigniter

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

由于未找到依赖性/ bin/sh,rpm安装失败

我正在尝试使用rpm安装一个软件包,为此我创建了一个不同的数据库,rpmdb --initdb --dbpath $HOME/myrpmdb 并在编译时指定了--dbpath中的路径.我得到的错误是

root@jason:su rpm --dbpath $HOME/myrpmdb -ivh XXX.rpm
error: Failed dependencies:
/bin/sh is needed by XXX
Run Code Online (Sandbox Code Playgroud)

和/ bin/sh存在我可以通过某种方式将其指定给安装程序吗?在创建不同的rpm数据库时是否有一些我错过的原因现在它无法对默认命令进行优化?

linux rpm

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

如何为Perl变量设置默认值?

我是Perl的新手.我需要使用外部模块HTTP :: BrowserDetect.我正在测试一些代码,并试图从os_string方法获取操作系统的名称.所以,我只是初始化了对象并创建了一个变量来存储返回的值.

my $ua = HTTP::BrowserDetect->new($user_agent);
my $os_name = $ua->os_string();

print "$user_agent $os_name\n";
Run Code Online (Sandbox Code Playgroud)

有一些用户代理不是浏览器用户代理,因此他们不会从os_string获取任何值.我收到了一个错误Use of uninitialized value $os_name in concatenation (.) or string

当$ os_name未初始化时如何处理这种情况,因为方法os_string返回undef(这是我认为通过阅读模块源代码发生的事情).我想应该有一种方法来提供默认字符串,例如在这些情况下没有操作系统.

perl initialization perl-module object

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

PHP - 很好的cronjob/crontab/cron教程或书籍

我正在寻找一个好的cronjob教程或书籍来学习如何使用PHP创建一个.

php cron

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

从定时器线程调用GUI线程上的方法

在我的应用程序中,我使用计时器来检查RSS提要中的更新,如果找到新项目,我会弹出一个自定义对话框来通知用户.当我手动运行检查时,一切都很好,但是当自动检查在计时器Elapsed事件中运行时,不会显示自定义对话框.

首先是这是一个线程问题?(我假设这是因为手动和自动检查都使用相同的代码).

当我运行自动检查时,是否必须从Timers Elapsed事件处理程序调用运行检查的方法?

我的自定义对话框类中是否需要执行某些操作?

编辑:这是一个winforms应用程序.

以下是代码的示例.(请不要在此代码示例中指出语法错误,这只是一个简单的示例,而不是真正的代码).

public class MainForm : System.Windows.Forms.Form
{
    //This is the object that does most of the work.
    ObjectThatDoesWork MyObjectThatDoesWork = new ObjectThatDoesWork(); 
    MyObjectThatDoesWork.NewItemsFound += new NewItemsFoundEventHandler(Found_New_Items);

    private void Found_New_Items(object sender, System.EventArgs e)
    {
        //Display custom dialog to alert user.
    }

    //Method that doesn't really exist in my class, 
    // but shows that the main form can call Update for a manual check.
    private void Button_Click(object sender, System.EventArgs e)
    {
        MyObjectThatDoesWork.Update();
    }

    //The rest of …
Run Code Online (Sandbox Code Playgroud)

c# multithreading timer

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

在TFS中使用Tortoise SVN diff

我想在TFS中使用Tortoise SVN diff实用程序.我知道如何在TFS中配置用户工具.我需要的是Tortoise SVN diff实用程序的安装程序.我想我需要安装完整的Tortoise SVN才能获得SVN diff工具,是否可以下载这个工具的独立版本?

我知道其他各种差异工具都可以使用,比如winMerge等,但我对龟龟svn diff非常熟悉.

diff tortoisesvn tfs visual-studio-2008 visual-studio

18
推荐指数
2
解决办法
6461
查看次数

内存完全由Java ConcurrentHashMap使用(在Tomcat下)

这是一个内存堆栈(作为高速缓存),其包含的只是一个静态的ConcurrentHashMap(CHM).

所有传入的HTTP请求数据都存储在此ConcurrentHashMap中.而且还有一个非同步调度过程中,从相同的ConcurrentHashMap取得数据,并将它们存储到数据库中后删除key.value.

该系统运行良好和平稳,但在以下条件才发现,内存得到了充分利用(2.5GB)和所有的CPU时间被送往执行GC:

-concurrent http命中1000/s

- 在15分钟内保持相同的并发命中

每次写入数据库时​​,异步进程都会记录CHM的剩余大小.CHM.size()保持在Min:300到Max:3500左右

我认为此应用程序存在内存泄漏.所以我使用Eclipse MAT来查看堆转储.运行可疑报告后,我从MAT获得了这些评论:

"org.apache.catalina.session.StandardManager" 通过 "org.apache.catalina.loader.StandardClassLoader @ 0x853f0280" 加载的一个实例占据2135429456(94.76%)字节.该存储器中的"$ java.util.concurrent.ConcurrentHashMap中段[]"通过""加载一个实例积累.

3,646,166 instances of java.util.concurrent.ConcurrentHashMap$Segment retain >= 2,135,429,456 bytes.
Run Code Online (Sandbox Code Playgroud)

Length    # Objects      Shallow Heap      Retained Heap 
0         3,646,166      482,015,968       >= 2,135,429,456 
Run Code Online (Sandbox Code Playgroud)

我将上面的长度0转换为CHM内的空长度记录(每次调用CHM.remove()方法).它与数据库内的记录数一致,创建此转储时,数据库中有3,646,166条记录

奇怪的情况是:如果我暂停压力测试,堆内存中的利用率将逐渐降至25MB.这需要大约30-45分钟.我重新模拟了这个应用程序,曲线看起来类似于下面的VisualVM图: 替代文字

继承人的问题:

1)这看起来像是内存泄漏吗?

2)每次删除调用remove(Object key, Object value)<key:value>从CHM中删除a ,删除的对象是否获得GC?

3)这与GC设置有关吗?我添加了以下GC参数但没有帮助:

-XX:+UseParallelGC

-XX:+UseParallelOldGC

-XX:GCTimeRatio=19

-XX:+PrintGCTimeStamps

-XX:ParallelGCThreads=6

-verbose:gc
Run Code Online (Sandbox Code Playgroud)

4)非常感谢任何解决这个问题的想法!:)

5)可能因为我的所有参考都是难以参考的吗?我的理解是,只要HTTP会话结束,所有那些非静态的变量现在都可用于GC.

注意我尝试用ehcache 2.2.0替换CHM,但是我遇到了相同的OutOfMemoryException问题.我想ehcache也在使用ConcurrentHashMap.

服务器规格:

-Xeon Quad内核,8个线程.

-4GB内存

-Windows 2008 R2

-Tomcat 6.0.29

java

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