小编Gui*_*rme的帖子

iOS 6,如何着色UIBarButtonItem白色图标?

我在我的应用程序中有一个浅色背景的UIBarButtonItems,我想用较暗的颜色而不是标准白色着色图标.

像这样:

在此输入图像描述

我能够使用色调文本

[[UIBarButtonItem appearance] setTitleTextAttributes:@{UITextAttributeTextColor: [UIColor blackColor]} forState:UIControlStateNormal];,
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何更改图标颜色.

有可能吗?

iphone objective-c uibarbuttonitem ios

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

将EditText电话号码格式化为用户类型

EditText每当用户键入一个新角色时,我想编辑一个字段内容.基本上我想使用格式化电话号码libphonenumber.

我实现了一个TextWatcher读取字段内容并将其格式化为电话格式的内容.但每次我EditText使用格式化字符串设置文本时,再次调用观察者,再次设置文本,并且它会陷入此无限循环中.

将文本编辑为用户类型的最佳或正确方法是什么?

@Override
public void afterTextChanged(Editable editable) {
    if (editable.length() > 1) {
        try {
            PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
            PhoneNumber numberProto = phoneUtil.parse(editable.toString(), "BR");
            String formatted = phoneUtil.format(numberProto, PhoneNumberFormat.NATIONAL);
            telephone.setText(formatted);
        } catch (NumberParseException e) {
           Log.d("Telefone", "NumberParseException was thrown: " + e.toString());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

formatting android textwatcher android-edittext

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

将变量声明为final会使代码更有效吗?

我正在使用Android Studio开发Android应用程序,并运行了代码分析.在许多不同的代码片段中,分析表明了一些变量"Declaration can have final modifier".

事实上,所有这些变量只设置了一次并且它在构造函数中完成,并且从今天开始,如果我将它们声明为没有问题就没有问题final.

我想知道如果通过这样做,如果代码运行更有效,将会有任何性能改进.换句话说,为什么IDE会向我建议这种变化?

其次,final尽可能声明变量是一种好习惯吗?是否有可以宣布这样的情况,但我最好不要?

java final

5
推荐指数
0
解决办法
80
查看次数

具有两个参数的路径的未定义[控制器] _path

我在我的Phoenix应用程序中创建了一个控制器ProgressController.这是我的路由器文件的样子:

defmodule MyTestApp.Router do
  use MyTestApp.Web, :router

  pipeline :api do
    plug :accepts, ["json"]
  end

  scope "/", MyTestApp do
    pipe_through :api

    get "/users/:user_id/courses/:course_id", ProgressController, :show
  end
end
Run Code Online (Sandbox Code Playgroud)

当我运行mix phoenix.routes它输出:

progress_path  GET   /users/:user_id/courses/:course_id  MyTestApp.ProgressController :show
Run Code Online (Sandbox Code Playgroud)

我有以下测试,它使用progress_path:

test "shows the user's progress in the given course", %{conn: conn} do
  # prepare some stuff
  conn = get conn, progress_path(conn, :show, %{user_id: 1, course_id: 7})
  # assert some stuff
end
Run Code Online (Sandbox Code Playgroud)

progress_pathmix phoenix.routes给我的同名,我很惊讶在运行我的测试时看到这个错误信息:

编译11个文件(.ex)

** (CompileError) test/controllers/progress_controller_test.exs:12: …
Run Code Online (Sandbox Code Playgroud)

routes phoenix-framework

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

如何删除UINavigationBar和UISearchBar发际线

我正在创建一个iOS 7应用程序,我希望在NavigationBar下面有一个SearchBar,我希望它们看起来像一个单件.因此,我需要使用相同的颜色(已经完成)对它们进行着色并删除NavigationBar底部和SearchBar顶部的发际线.我怎样才能做到这一点?

uinavigationbar uisearchbar ios7

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

分配NSAttributedString后,UILabel不会自动收缩文本

我有一个宽度有限的标签,我需要它来自动调整文本的字体大小以适应.由于我需要加下划线的文本,我为此标签分配了一个属性字符串:

[_commentsLabel setAttributedText:[[NSAttributedString alloc] initWithString:[NSString stringWithFormat:@"%d comments", [comments count]] attributes:@{NSUnderlineStyleAttributeName : @(NSUnderlineStyleSingle)}]];
Run Code Online (Sandbox Code Playgroud)

如您所见,注释的数量将定义文本的长度.但出于某种原因,文本并没有缩小.最小字体比例设置为0.1并选中Tighten Letter Spacing.

我认为它可能与我正在使用的自定义字体有关,但即使使用系统默认字体,文本也会被剪裁.

shrink nsattributedstring uilabel ios

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

azk - 如何设置测试数据库?

我在开发中使用了azk(这是一个Ruby on Rails项目),而azk设置了一个名为MySQL的数据库#{manifest.dir}_development(manifest.dir作为项目所在的目录名).

问题是,当我尝试运行RSpec测试时,它将访问相同的开发DB,而不是测试数据库.

我和我的同事在过去的几个小时里一直在努力弄清楚如何设置测试数据库.我们应该怎么做?

mysql rspec ruby-on-rails azk

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

IOS UIButton与动画gif图像

如何将动画gif文件添加为UIButton的默认图像.我已经添加了gif文件作为按钮图像.但它不是动画.

谢谢.

cocoa ios

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

正则表达式验证具有字符限制的密码

我需要使用以下规则验证密码:

  • 6到20个字符
  • 必须至少包含一位数字;
  • 必须至少包含一个字母(不区分大小写);
  • 可以包含以下字符:@#$%&*

以下表达式匹配除最后一个要求之外的所有要 我能用最后一个做什么?

((?=.*\d)(?=.*[A-z]).{6,20})

regex passwords

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

Android Studio - 添加没有新包的子文件夹

我有一个包com.myapp.api,其中包括几个辅助类和许多模型类.为了组织起见,我希望我可以将所有模型放在一个名为的子文件夹中Models.

当我这样做时,Android Studio会在每个模型文件上标记一个错误,并说它们的包应该被命名com.myapp.api.Models.

重命名包不是什么大问题,但我需要这些模型来访问辅助类中存在的一些包可见方法和变量.如果我重命名,我必须公开这些方法和变量,我不想这样做.

有没有办法强迫Android Studio不尝试根据文件结构创建新包?

android android-studio

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