小编Fal*_*rri的帖子

在listview中回收视图,值得吗?

在Android listview上覆盖baseadapter时,必须实现此方法public View getView(int position, View convertView, ViewGroup parent).convertview是在滚动时先前从列表中推出的视图,它被赋予以便您可以重用该视图而不是创建新视图.

我的问题是,是否真的有必要重用视图?如果只更改了一段数据,我可以理解重用它.但创建视图的开销真的很重要吗?使用我见过的列表视图的每个教程都会告诉您回收视图,即使是像textview这样简单的简单视图.

我猜我的问题是谷歌为什么决定将此作为该getView方法的默认行为?

android listview android-arrayadapter

8
推荐指数
2
解决办法
7313
查看次数

android中嵌套的内部Activity类

声明一个可以在另一个Activity类中扩展Activity的类可能吗?如果是,我将如何在清单中注册该类?那么,这是可以合理完成的事情还是一个坏主意?

我在想类似的东西

class ListClass extends ListActivity{

    ...
    ArrayList items;

    class ItemClass extends Activity{

        ...
        Item item;

        @Override
        onCreate(){
            Integer pos = getIntent().getExtras().getInt("pos");
            item = items.get(pos);
        }
    }

    @Override
    onItemClick(int position){

        startActivity(new Intent(this, ItemClass.class).putExtra("pos", position));

    }
}
Run Code Online (Sandbox Code Playgroud)

请注意,语法显然不是100%正确,主要是伪代码.

android nested-class inner-classes listactivity android-activity

8
推荐指数
2
解决办法
9542
查看次数

HTML5导航标签内容

在与<nav>html5中的标记相关的文档中似乎存在冲突的示例.我见过的大多数例子都使用了这个:

<nav>
  <ul>
    <li><a href='#'>Link</a></li>
    <li><a href='#'>Link</a></li>
    <li><a href='#'>Link</a></li>
  </ul>
</nav>
Run Code Online (Sandbox Code Playgroud)

但我想知道这是否只是因为人们习惯使用div.我见过的例子就是这样做

<nav>
  <a href='#'>Link</a>
  <a href='#'>Link</a>
  <a href='#'>Link</a>
</nav>
Run Code Online (Sandbox Code Playgroud)

第二种方式对我来说似乎更清晰,更具语义性.是否有"官方"正确版本?是否有充分的理由仍然使用<ul>导航标签内部而不是直接使用锚元素?

html html5

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

scala日志库中的性能按值调用vs按名称调用

我最近一直在关注各种scala日志库,其中绝大多数都实现了日志记录功能

def debug(s: => String)
Run Code Online (Sandbox Code Playgroud)

因此,如果关闭调试日志记录,它将不会执行该语句.但是,我刚刚遇到了logula,它特别指出了它的一个好处

对于其记录语句,这意味着两两件事:不像很多Scala的记录库,Logula不使用通过按姓名语义(=>阿例如,f):

  • Scala编译器不必为每个日志记录语句创建一次性闭包对象.这应该减少垃圾收集压力.

这实际上对我来说是完全合理的.所以我的问题是,是否存在比较这两种方法的真实世界性能基准/数据?理想情况下,从现场项目到人为的基准测试?

performance logging scala callbyname

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

从C调用C++方法

所以我已经有一段时间了,因为我直接使用C.而且我正处于一个项目中,我正在使用C++编写API.无论如何,这些方法中的大多数都只是C,并且所有返回值都是C结构.除了一个.我需要返回一种方法vector<string>.现在这是我的问题.C++方法/库/可以从C调用吗?我问,因为我不知道使用API​​的人是否会用C或C++编写,我觉得我应该只返回C结构.这需要我回来char**,对吗?

如果没有,我希望这是有道理的:

tl; dr version - 如果返回C结构,我可以从C调用C++方法,如果是,那么最好(仅?)等效返回值为vector<string>- > char**

更新:C++方法只是全局方法.它们中没有类或面向对象的东西.除了我的向量问题之外,C++特有的唯一的东西是一些stringstreams

c c++

7
推荐指数
3
解决办法
1499
查看次数

python unittest方法

我可以在python的测试类中调用测试方法吗?例如:


class Test(unittest.TestCase):
    def setUp(self):
        #do stuff

    def test1(self):
        self.test2()

    def test2(self):
        #do stuff

更新:我忘记了问题的另一半.只有在测试人员调用的方法之后才会调用setup或teardown吗?或者它会在test1进入和从test1调用test2之后调用吗?

python unit-testing

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

在linux中编译python脚本

所以我有一个依赖于几个模块的python脚本.特别是pexpect和pyinoitify.我知道你可以在Windows中将一个python脚本编译成.exe,但在linux中是否有相对等价的东西?我不关心它是二进制文件,我只是希望能够分发我的脚本而不需要单独安装pexpect和pyinotify.这可能/值得吗?

python linux binary compilation

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

使用pyinotify来监视文件创建,但是等待它完全写入磁盘

我正在使用pyinotify来查看在其中创建文件的文件夹.当创建某些文件时,我想移动它们.问题是,一旦创建文件(显然),我的程序就会尝试移动它,甚至在它完全写入磁盘之前.

有没有办法使pyinotify等到一个文件完全写入磁盘,然后通知我它已被创建?还是有任何简单的方法,在我收到通知后,让python等待移动它直到它完成写入?

python linux file pyinotify

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

inotify C头

所以我正在尝试编写一个使用inotify的C程序.我之前使用过pyinotify,所以我理解它是如何工作的.但是,我正在遵循一些指南,它告诉我要包括<linux/inotify.h>.问题是这个头只有宏定义,而不是函数原型.看起来函数是原型的<sys/inotify.h>.

我的问题是linux/inotify.h和之间的区别是什么sys/inotify.h?为什么两者兼而有之?

c linux header inotify

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

Android中的onPress/onRelease

在flash中有没有任何类型的onPress和onRelease for android按钮?

android

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