小编gav*_*gav的帖子

网格布局上的手势检测

我想fling在我的Android应用程序中运行手势检测.

我拥有的是GridLayout包含9 ImageView秒的内容.源代码可以在这里找到:Romain Guys的网格布局.

我拿的那个文件来自Romain Guy的Photostream应用程序,并且只是略微适应了.

对于简单的点击情况,我只需要onClickListenerImageView我添加的每一个设置为activity实现的主要部分View.OnClickListener.实现识别a的东西似乎无比复杂fling.我认为这是因为它可能跨越views

  • 如果我的活动实现, OnGestureListener我不知道如何将其设置为我添加GridImage视图或视图的手势监听器.

    public class SelectFilterActivity extends Activity implements
       View.OnClickListener, OnGestureListener { ...
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果我的活动实现, OnTouchListener那么我没有 onFling方法override(它有两个事件作为参数,允许我确定是否值得注意).

    public class SelectFilterActivity extends Activity implements
        View.OnClickListener, OnTouchListener { ...
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果我做了一个自定义View,就像GestureImageView那个扩展ImageView我不知道如何告诉活动fling从视图中发生了.无论如何,我试过这个,当我触摸屏幕时没有调用方法.

我真的只需要一个跨视图的具体例子.什么,何时以及如何附上这个listener?我还需要能够检测单击.

// Gesture detection
mGestureDetector = new …
Run Code Online (Sandbox Code Playgroud)

android listener gesture-recognition

1076
推荐指数
16
解决办法
40万
查看次数

如何在屏幕底部对齐视图?

这是我的布局代码;

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TextView android:text="@string/welcome"
        android:id="@+id/TextView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
    </TextView>

    <LinearLayout android:id="@+id/LinearLayout"
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="bottom">

            <EditText android:id="@+id/EditText"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content">
            </EditText>

            <Button android:text="@string/label_submit_button"
                android:id="@+id/Button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content">
            </Button>

    </LinearLayout>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这看起来像在左边,我希望它看起来像在右边.

Android布局 - 实际(左)和期望(右)

显而易见的答案是在高度上将TextView设置为fill_parent,但这不会为按钮或输入字段留下任何余地.本质上问题是我希望提交按钮和文本条目在底部是固定高度,文本视图填充剩余的空间,类似于水平线性布局我希望提交按钮包装其内容和用于填充剩余空间的文本条目.

如果线性布局中的第一个项目被告知fill_parent它就是这样做的,没有其他项目的空间,我如何获得一个线性布局中的第一个项目来填充除了其余项目所需的最小空间之外的所有空间布局中的项目?

编辑:

相对布局确实是答案 - 谢谢!

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TextView
        android:text="@string/welcome"
        android:id="@+id/TextView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true">
    </TextView>

    <RelativeLayout
        android:id="@+id/InnerRelativeLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true" >

        <Button
            android:text="@string/label_submit_button"
            android:id="@+id/Button"
            android:layout_alignParentRight="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
        </Button>

        <EditText
            android:id="@+id/EditText"
            android:layout_width="fill_parent"
            android:layout_toLeftOf="@id/Button"
            android:layout_height="wrap_content">
        </EditText>

    </RelativeLayout>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

xml user-interface android android-layout

627
推荐指数
13
解决办法
51万
查看次数

O(N log N)复杂性 - 与线性相似?

所以我想我会因为提出这样一个微不足道的问题而被埋葬,但我对某些事情感到有些困惑.

我已经在Java和C中实现了quicksort,我正在做一些基本的比较.该图表以两条直线形式出现,其中C比Java对应的快了4ms,超过100,000个随机整数.

结果

我的测试代码可以在这里找到;

Android的基准

我不确定(n log n)线是什么样的,但我不认为它是直的.我只是想检查这是否是预期的结果,我不应该尝试在我的代码中找到错误.

我将公式固定在excel中,对于10号基础,它似乎是一条直线,在开始时有一个扭结.这是因为log(n)和log(n + 1)之间的差异是线性增加的吗?

谢谢,

GAV

language-agnostic complexity-theory quicksort

75
推荐指数
3
解决办法
9万
查看次数

Emacs或Vim对Eclipse提供的效率如何?

我大约5年前开始编码.我是通过Java和Eclipse介绍的,它们在编程社区中都有很大的耻辱感.我目前实习的公司的一些人更喜欢emacs或vim.我不知道基本的文本编辑器如何比一般的IDE更快或更容易,尽管我很欣赏像构建这样的东西,从命令行开始会更快.

这是"老男孩"俱乐部的案例还是以这种方式编制项目更有效率?

你能提供一些用例来证明吗?如果我提倡Eclipse,我会说重构和自动完成是非常方便的工具.

GAV

eclipse vim emacs

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

如何在Visual Studio中使用LINQPad Dump()扩展方法?

LINQPad非常棒,特别有用的是Dump()扩展方法,它可以将几乎任何类型的对象和结构(匿名或非匿名)呈现给控制台.

最初,当我转移到Visual Studio 2010时,我尝试Dump使用委托制作我自己的方法来获取为匿名类型等呈现的值.尽管它变得非常复杂,虽然它起初很有趣和教育,但我需要一个扎实的实施.检查了.NET Reflector中的LINQPad代码后,我更加确信我不会得到正确的实现.

我可以提供免费的库以提供Dump功能吗?

c# linqpad

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

使用C在二进制表示中打印int

我正在寻找一个允许我打印int的二进制表示的函数.到目前为止我所拥有的是什么;

char *int2bin(int a)
{
 char *str,*tmp;
 int cnt = 31;
 str = (char *) malloc(33); /*32 + 1 , because its a 32 bit bin number*/
 tmp = str;
 while ( cnt > -1 ){
      str[cnt]= '0';
      cnt --;
 }
 cnt = 31;
 while (a > 0){
       if (a%2==1){
           str[cnt] = '1';
        }
      cnt--;
        a = a/2 ;
 }
 return tmp;

}
Run Code Online (Sandbox Code Playgroud)

但是当我打电话时

printf("a %s",int2bin(aMask)) // aMask = 0xFF000000
Run Code Online (Sandbox Code Playgroud)

我输出像;

0000000000000000000000000000000000xtpYy(还有一堆未知字符.

这是函数中的缺陷还是我打印字符数组的地址或什么?对不起,我只是看不出我出错的地方.

NB代码来自这里

编辑:这不是家庭作业FYI,我正在尝试用不熟悉的语言调试别人的图像处理程序.然而,如果它被标记为家庭作业,因为它是一个基本概念,然后公平竞争.

c binary integer

23
推荐指数
3
解决办法
9万
查看次数

Tomcat - 如何限制Tomcat将使用的最大内存

我在小型VPS(256MB/512MB)上运行Tomcat,我想明确限制Tomcat使用的内存量.

我知道我可以通过传入java最大堆和初始堆大小参数来以某种方式配置它;

-Xmx256m
-Xms128m
Run Code Online (Sandbox Code Playgroud)

但我无法在Ubuntu的Tomcat 6配置中找到这个位置.

提前致谢,

GAV

memory configuration tomcat

22
推荐指数
2
解决办法
6万
查看次数

MySQL连接超时问题 - 使用Hibernate和ORM在Tomcat上的Grails应用程序

我在VPS上的Ubuntu上有一个运行在Tomcat上的小型grails应用程序.我使用MySql作为我的数据存储区,一切正常,除非我离开应用程序超过半天(8小时?).我做了一些搜索,显然这是wait_timeoutmysql.cnf中的默认值,所以8小时后连接会死,但Tomcat不会知道,当下一个用户试图查看该站点时,他们会看到连接失败错误.刷新页面将解决此问题,但我想完全摆脱错误.对于我的MySql版本(5.0.75),我只有my.cnf而且它不包含这样的参数.在任何情况下,更改此参数都无法解决问题.

这篇Blog Post似乎报告了一个类似的错误,但我仍然不完全理解我需要配置什么来解决这个问题,而且我希望有一个比另一个第三方库更简单的解决方案.我正在运行的机器有256MB内存,我正在努力使程序/服务的运行数量降到最低.

我可以在Grails/Tomcat/MySql中配置什么来让它消失吗?

提前致谢,

GAV

从我的Catalina.out;

2010-04-29 21:26:25,946 [http-8080-2] ERROR util.JDBCExceptionReporter  - The last packet successfully received from the server was 102,906,722 milliseconds$
2010-04-29 21:26:25,994 [http-8080-2] ERROR errors.GrailsExceptionResolver  - Broken pipe
java.net.SocketException: Broken pipe
        at java.net.SocketOutputStream.socketWrite0(Native Method)
         ...
2010-04-29 21:26:26,016 [http-8080-2] ERROR util.JDBCExceptionReporter  - Already closed.
2010-04-29 21:26:26,016 [http-8080-2] ERROR util.JDBCExceptionReporter  - Already closed.
2010-04-29 21:26:26,017 [http-8080-2] ERROR servlet.GrailsDispatcherServlet  - HandlerInterceptor.afterCompletion threw exception
org.hibernate.exception.GenericJDBCException: Cannot release connection
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: Already closed.
        at …
Run Code Online (Sandbox Code Playgroud)

mysql grails tomcat timeout

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

SQL Server数据库更改侦听器C#

我想从C#监听SQL Server数据库中数据的更改.我希望有一些听众可以用来判断我的数据是否陈旧.尽管是一个相当常见的场景,我找不到任何不仅仅是轮询数据库的解决方案.

我使用Linq-To-SQL来访问数据,因此有一个DataContext对象,我希望我能听一个关于数据更改的事件,但我似乎无法找到它.

我感谢这是一个非常重要的障碍(从C#方法到SQL Server DB),我之所以认为这是一个已解决的问题的原因是它是GUI的常见要求.如果无法监听更新,如何保持GUI中显示的数据新鲜(当它由SQL Server数据源支持时).

虽然这不适用于GUI工作,但我希望能够适应这个领域.

有没有办法在C#中订阅SQL Server数据库更改事件?

c# sql-server listener

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

你会如何改进Dalvik?Android的虚拟机

我目前正在Android平台上撰写论文.经过一番研究,很明显Dalvik还有改进的余地.我想知道,你觉得开发人员在这个目标上的最佳用途是什么?

JIT编译似乎是一个很大的问题,但后来我也听说过这种资源在这么低资源的机器上使用有限.有没有人有资源或数据支持这一点?

是否还有其他选择需要考虑?除了开发强大的本机开发工具包以绕过VM.

对于那些感兴趣的人,有一个关于Dalvik VM的录音和在线讲座.

任何想法都欢迎,因为这个问题似乎是主观的,我会澄清我接受的答案必须有一些理由提出修改.任何支持它的数据,例如Sun JVM引入时的改进,都将是一个巨大的优势.

android jit dalvik vm-implementation

17
推荐指数
1
解决办法
7902
查看次数