我想知道如何在Android中实现一个简单的计时器,它带有一个启动和停止按钮,以HH显示数据:MM:SS:MsMs格式......我一直在搜索和搜索,我找到了一些课程在谷歌开发者,但他们没有举例,我迷路了...你能指导我一个教程/例子吗?我刚开始在Android :)任何帮助将非常感激.
我在理解一段代码的工作原理时遇到了一些麻烦.以下是stdlib实现qsort的比较函数:
int scmp(const void *p1, const void * p2)
{
char *v1, *v2;
v1 = (char *) p1;
v2 = (char *) p2;
return strcmp(v1,v2);
}
Run Code Online (Sandbox Code Playgroud)
当然,这仅适用于字符串.我的问题是:为什么下面的代码有效?
int scmp(const void *p1, const void * p2)
{
char *v1, *v2;
v1 = *(char **) p1;
v2 = *(char **) p2;
return strcmp(v1,v2);
}
Run Code Online (Sandbox Code Playgroud)
在我看来,在第二个版本,我用力铸造显然它是一个char*到char**.问题是变量仍然包含变量的地址char.当我申请时*,我理解C将通过获取内容来处理此命令 p1,然后在存储在其中的地址之后读取8个字节(在我的拱门上),以便最终获得类型的值char*.在我看来,这应该导致将8个字符组合成无效的内存地址.
尽管如此,这两个功能同样有效.我哪里错了?
我正在尝试访问我绑定的对象DataTemplate,特别是我只需要一个int值.我已经通过Tap将DataTemplate中的主Grid链接到事件处理程序:
<DataTemplate x:Name="joinTemplate">
<Grid Tag="{Binding index}" DataContext="{Binding}" Tap="select_Click" ...>
...
</Grid>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
我的处理程序如下:
private void select_Click(object sender, System.Windows.Input.GestureEventArgs e)
Run Code Online (Sandbox Code Playgroud)
问题是我仍然无法访问sender.DataContext或sender.Tag.但是,当我在调试器中运行它并通过Watch查看它时,我可以DataContext通过简单地扩展"base"两次来获取和Tag.这应该意味着我被赋予的对象继承了那些对象并且在某种程度上是原始Grid的子对象,但是,我认为发送者始终是Grid你绑定处理程序的?为了获得我使用的实际元素,我必须使用,对于这个例子e.OriginalSource,对吧?
所以我正在尝试编写一个秒表应用程序,以毫秒为单位显示时间,但由于某种原因它不起作用.基本上我只有一个togglebutton,按下后,开始打印从开始时间到当前时间的毫秒......但在模拟器中,应用程序锁定.怎么了?
public class testing extends Activity {
/** Called when the activity is first created. */
Button start,stop;
long init,now,time;
TextView display;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
display = (TextView) findViewById(R.id.chronometer1);
final ToggleButton passTog = (ToggleButton) findViewById(R.id.onoff);
passTog.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
init=System.currentTimeMillis();
while(passTog.isChecked())
{
now=System.currentTimeMillis();
time=now-init;
display.setText("t: " + time);
}
}
});
}
Run Code Online (Sandbox Code Playgroud)
}
我想做的是一个简单的HTML5聊天室,没有什么花哨的,一旦有人说出一些东西,它将它发送给当前连接到服务器的每个人,就是这样.没有存储,没有任何复杂.它必须是灵活的,但是,我的网站应该能够在需要时自动创建单独的聊天室.我已经看过很多演示和示例,但是所有这些都需要我安装node.js或类似的需要终端访问的东西(我没有).我目前正在运行其中一个免费的网站主机,它给你一个ftp客户端,一个mysql数据库,一些php支持就是这样.有没有办法做到这一点?或许我遗漏了一些东西,有没有办法在这些服务器上安装软件包?也许有人知道获得终端访问的方法?任何形式的帮助将不胜感激,谢谢.
我正在尝试打印我的程序生成的HTML文件,但它不起作用.在Ubuntu上,".isSupported(Desktop.Action.PRINT)"返回false,即使我安装了gnome库,并且在Windows 7上,java抛出以下异常:
java.io.IOException: Failed to print file:/C:/Users/user/Documents/document.html. Error message: Unspecified error
Run Code Online (Sandbox Code Playgroud)
然后是堆栈跟踪.下面是代码,我正在使用java.awt.Desktop.
File doc = DocumentComposer.writeDocument(new File(System.getProperty("user.dir") + File.separator + "docs" + File.separator + docName + ".html"), case, data);
if (Desktop.isDesktopSupported())
{
Desktop desktop = Desktop.getDesktop();
if (desktop.isSupported(Desktop.Action.PRINT))
{
desktop.print(doc);
}
else
printError();
}
else
printError();
Run Code Online (Sandbox Code Playgroud)
任何形式的帮助将非常感激:).