小编Aza*_*Aza的帖子

为什么Android Studio告诉我使用getSupportActionBar()而不是getActionBar()?

只需添加一个非常简单的帮助活动(只是从资源文件中显示一段HTML文本)到一个非常简单的测试应用程序,在这个新的Android Studio 0.8.6测试版中,我收到以下警告,没有提供理由/理由:

应该使用getSupportActionBar而不是ActionBar名称

有谁知道为什么?

还有任何文档,因为Android Studio没有提供,也无法在Android站点上找到任何特定的内容.

如果有警告的理由,有人可以指出一个完整的例子,因为这个类几乎完全是通用的/大多数例子围绕例如

public class HelpActivity extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_help);

    ActionBar actionBar = getActionBar();
    actionBar.setTitle(getString(R.string.action_help));

    TextView helpText = (TextView) findViewById(R.id.help_text);
    helpText.setText(Html.fromHtml(getString(R.string.help_markup)));
  }
}
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-activity android-studio

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

这种C#扩展方法是不纯的,如果是这样,代码不好?

我正在学习函数编程,我想知道:

1)如果我的ForEach扩展方法是纯粹的?我打电话的方式似乎违反了"不要把对象弄得乱七八糟",对吧?

public static void ForEach<T>(this IEnumerable<T> source, Action<T> action)
{
  foreach ( var item in source )
     action(item);
}


static void Main(string[] args)
{
    List<Cat> cats = new List<Cat>()
    {
        new Cat{ Purring=true,Name="Marcus",Age=10},
        new Cat{ Purring=false, Name="Fuzzbucket",Age=25 },
        new Cat{ Purring=false, Name="Beanhead",Age=9 },
        new Cat{Purring=true,Name="Doofus",Age=3}
    };


    cats.Where(x=>x.Purring==true).ForEach(x =>
    {
        Console.WriteLine("{0} is a purring cat... purr!", x.Name);
    });

    // *************************************************
    //  Does this code make the extension method impure?
    // *************************************************
    cats.Where(x => x.Purring == false).ForEach(x =>
    { …
Run Code Online (Sandbox Code Playgroud)

c# extension-methods functional-programming

4
推荐指数
2
解决办法
1600
查看次数

休眠限制和/或命令

关于Restrictions.or和Restrictions.and的小问题

如果我做这样的事情:

...
criterion = criterionA;
criterion = Restrictions.and(criterion, criterionB);
criterion = Restrictions.or(criterion, criterionC);
criterion = Restrictions.and(criterion, criterionD);
Run Code Online (Sandbox Code Playgroud)

这会被视为:

(A and B) or (C and D) (following mathematical conventions)
Run Code Online (Sandbox Code Playgroud)

或者它将按照添加限制的顺序进行处理:

(((A and B) or C) and D)
Run Code Online (Sandbox Code Playgroud)

如果有的话还请添加参考文献...

java hibernate criteria

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

CodeIgniter只允许在登录时访问某些控制器

我有一些CodeIgniter控制器只能由已登录的用户访问(即$ this-> session-> userdata('username')不为null).如果未经过身份验证的人试图访问所述控制器,他们应该收到:

header('location: /auth/login');
Run Code Online (Sandbox Code Playgroud)

必须有一个更好的方法来做到这一点,而不是把一个

if (!$this->session->userdata('username'))
    header('location: /auth/login');
else
{
    [rest of function]
}
Run Code Online (Sandbox Code Playgroud)

在控制器的每个功能面前......

我知道DX_Auth有类似的功能,但我没有使用身份验证插件,我不愿意这样做.

谢谢!
马拉

authentication controller codeigniter

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

Subversion中Head的概念是什么?与Trunk的区别是什么?

我不清楚干线是"主要"分支,并理解分支和标签的概念.但是"头"在哪里?看来这是"最新"修订版?如果是这样,它与"主干"的区别是什么

我确定我可能混合不相关的字段,例如,trunk是分支,因为head是标记?

我挖掘了一些文件,但我必须承认,时间限制并不是那么清楚.

svn configuration-management

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

为什么__attribute __((pure))函数中的GCC强制参数不是const?

以下代码在GCC 4.2下编译时没有警告,据我所知,它实际上不应该:

#include <fstream>

__attribute__((pure))
double UnpureFunction(double* x) {
  x[0] = 42;
  return 43;
}

int main () {
  double x[] = {0};
  double y = UnpureFunction(x);
  printf("%.2f %.2f\n", x[0], y);
}
Run Code Online (Sandbox Code Playgroud)

(打印"42.00 43.00".)

据我了解,pure属性告诉编译器该函数没有外部效果(请参阅此处的 "纯"部分).但是UnpureFunction正在修改它的参数.为什么允许这种情况发生?至少,编译器可以自动使每个参数为const.

c++ attributes

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

如何修复Ruby Yes/No-Style循环?

我有这个方法,我写了一个使用while循环内部的n次用户输入.这个想法非常简单和常见,如果条件为真则重复while循环,问题是它不起作用......

def play_again?
  flag = true
  while flag
    print "Would you like to play again? [y/n]: "
    response = gets.chomp
    case response
      when 'y'
        Game.play
      when 'n'
        flag = false
    end
  end
  flag
end

play_again?
Run Code Online (Sandbox Code Playgroud)

目前它只会成功重复一次,然后退出,而不是继续循环,你能告诉我有什么问题吗?(对不起,如果这是一个n00b问题,毕竟我是一个红宝石n00b)

谢谢.

ruby while-loop

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

如何检查您的iOS应用代码是否使用了应用商店不允许的API?

我知道当你将它提交到应用程序商店时,有一些限制的api或代码不允许在你的应用程序中.

你怎么知道它们是什么?有没有办法在提交之前检查你的应用程序,以确保你没有使用过这样的api?

在设计阶段避免这个问题可能比在以后尝试修复它更好,所以我想知道Xcode中是否有任何工具或文档来确定这个问题.

xcode objective-c iphone-privateapi

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

Magento如果客户购买某些产品,则有条款和条件

我想仅在客户购买某些产品时才显示条款和条件(agreements.phtml).例如,我们的一些产品需要处方.客户购买其中一个,我们希望条款出现.

我在后端创建了一个属性:prescription_required

伪代码如下:

Loop through products in the basket
    if prescription_required == yes
        set flag to yes
    end if
end loop
Run Code Online (Sandbox Code Playgroud)

如果flag设置为yes,请通过agreements.phtml中的代码

我认为我遇到的主要问题是在agreement.phmtl中获取产品信息并在整个篮子中循环.

我试过了

<?php 
    $_product = Mage::getModel('catalog/product')->load($this->getData('product_id'));
    echo $_product->getName();
?> 
Run Code Online (Sandbox Code Playgroud)

但没有任何回报.

magento conditional-statements

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

删除并重新创建数组或用零填充它是否更快,为什么?

假设我创建了一个用于模拟处理器内存的数组:

byte[] mem = new byte[0xF00];
Run Code Online (Sandbox Code Playgroud)

该数组在仿真操作过程中使用,最终(读取:带频率)需要被丢弃或重置.我的问题是,哪个更快,为什么?

mem = new byte[0xF00];
Run Code Online (Sandbox Code Playgroud)

要么:

for(int i = 0; i < mem.length; i++) mem[i] = 0;
Run Code Online (Sandbox Code Playgroud)

它可能看起来并不重要,但在模拟大量处理器时,效率会有所不同.速度的差异将来自JVM的垃圾收集; 在一个中,必须转储数组并进行垃圾收集,但是,JVM不再需要分配(并且可能为零)新内存.在第二种情况下,避免了JVM成本,但我们仍然必须遍历数组中的每个元素.

作为这个问题的其他警告:

  1. 成本比率是否随数据类型的大小而变化?比如,怎么样short[]
  2. 阵列的长度是否会影响成本比率?
  3. 最重要的是,为什么?

java garbage-collection jvm memory-management

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