我试图用代码将视图扩展到容器中,并同时获得对扩展视图(按钮)的引用。所以代码是这样的:
Button mybut = (Button) getLayoutInflater().inflate(resID, lyMain, true);
Run Code Online (Sandbox Code Playgroud)
但这是行不通的:返回的结果不是我期望的。在https://developer.android.com/reference/android/view/LayoutInflater.html上阅读文档,我发现:
(inflate...returns)... The root View of the inflated hierarchy. If root was supplied and attachToRoot is true, this is root; otherwise it is the root of the inflated XML file.
现在是愚蠢的问题:为什么此方法应返回我已经知道的东西(当我传递根和“ true”以附加到它时)?我很有可能需要引用刚刚膨胀的View,而不是引用传递给该方法的根/容器。
以下是一个简单的C程序:
#include <unistd.h>
#include <stdio.h>
int main(void)
{
while (1)
{
printf("Hello World\n");
sleep(1);
}
}
Run Code Online (Sandbox Code Playgroud)
构建并运行它," Hello World"将打印在终端中:
$ ./a.out
Hello World
Hello World
Hello World
Run Code Online (Sandbox Code Playgroud)
但如果stdout重定向到文件,运行一段时间后,文件中仍然没有任何内容:
$ ./a.out > log.txt
^C
$ cat log.txt
$
Run Code Online (Sandbox Code Playgroud)
为什么printf输出到stdout重定向到的文件?
我对Java和Android知之甚少。我想做的是在 Android 应用程序中打开 /dev/ttyS0,它应该与串行线通信,但我迷路了。
我的设备已root,并且从命令行我可以“echo ...>/dev/ttyS0”并从中读取内容,但我在尝试用Java执行此操作时迷失了方向。首先,我找不到一种方法以简单的读写模式打开文件,而不需要处理缓冲区和其他复杂的问题(显然,我想要无缓冲的 I/O)。
我在互联网上搜索,但所有示例都指的是 USB,这对我来说不可用。然后我找到了 UartDevice 类,但它是一个从中派生正确实现的类......
我尝试使用 File 类,并附加一个 Reader 和 Writer 类,但编译器抱怨,坦率地说,我不确定这是正确的方法。我需要一个框架代码来开始;我怀念一个简单的 TextFile 类,它具有可在同一个打开文件上同时使用的无缓冲 read() 和 write() 方法!
有人能指出我正确的方向吗?谢谢?
对于同一个文件,我认为输出ls -l xxx总是大于或等于输出size xxx.
但是当我键入ls -l /bin/ls输出时是:
-rwxr-xr-x 1 root root 104508 1? 14 2015 /bin/ls
对于size /bin/ls,输出是:
text data bss dec hex filename 101298 976 3104 105378 19ba2 /bin/ls
为什么ls显示不到size?104508 <105378