标签: handler

Android处理程序定期

这就是我想要实现的目标:

  1. 活动以没有ClickListener开始,并且有四个文本视图都具有白色背景

  2. 我想将textview 1的颜色更改为蓝色.等待2秒钟然后将其更改为白色并将textview 2更改为蓝色.等待2秒然后将其改回白色......依此类推,直到我将textview 4变为蓝色并返回白色.

  3. 完成后,我想添加ClickListener并等待用户输入.

我怎样才能做到这一点?我是Android的新手但是理解点点滴滴.

android handler

6
推荐指数
1
解决办法
2386
查看次数

在Android中解雇ProgressDialog

当我单击列表项时,我想打开一个ProgressDialog,它打开了Web服务所单击项的数据.需要出现ProgressDialog,直到单击的项的WebContent被打开.

我知道使用Progress Dialog的代码,但我不知道如何解雇它.

我听说Handler将用于解雇Progress Dialog,但我没有找到最终使用Handler的任何有价值的例子.

任何人都可以告诉我如何使用处理程序来关闭进度对话框?

谢谢,大卫

android handler progressdialog

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

Handler中的问题与android中的消息

我在我的应用程序中使用处理程序,在一个屏幕中通过单击按钮将调用一组代码.要调用该组代码,我将消息发送到处理程序并覆盖句柄消息方法.第一次单击按钮时,处理程序完美运行并执行代码集.当我第二次点击该按钮时,我得到以下异常.

05-03 09:45:25.703: ERROR/AndroidRuntime(1971): FATAL EXCEPTION: main
05-03 09:45:25.703: ERROR/AndroidRuntime(1971): android.util.AndroidRuntimeException: { what=1 when=7381217 obj=android.app.AlertDialog@462b5c58 } This message is already in use.
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.MessageQueue.enqueueMessage(MessageQueue.java:171)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.sendMessageAtTime(Handler.java:457)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.sendMessageDelayed(Handler.java:430)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.sendMessage(Handler.java:367)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at com.mysnob.utils.MessageDialog$8.onClick(MessageDialog.java:93)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:158)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Looper.loop(Looper.java:144)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.app.ActivityThread.main(ActivityThread.java:4937)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at java.lang.reflect.Method.invokeNative(Native Method)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at java.lang.reflect.Method.invoke(Method.java:521)
05-03 09:45:25.703: …
Run Code Online (Sandbox Code Playgroud)

android exception handler

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

UIDocumentInteractionController在没有选项的特定应用程序中打开文件

我正在使用UIDocumentInteractionController在另一个应用程序DropBox中打开一个文件.

我想要做的是在另一个特定的应用程序中打开该文件,但我只管理到目前为止显示支持的应用程序并允许用户选择.

UIDocumentInteractionController *udi = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath: jpgPath]];
[udi retain];
CGRect r = CGRectMake(0, 0, 300, 300);
[udi presentOpenInMenuFromRect:r inView:self.view animated:YES];
Run Code Online (Sandbox Code Playgroud)

这提供了支持的应用程序列表,但我想使用dropbox直接打开文件,而不使用选项框.有任何想法吗?

iphone objective-c handler ios uidocumentinteraction

6
推荐指数
1
解决办法
4744
查看次数

Android单元测试多个线程

我在Android中进行单元测试时遇到问题.

我的对象MyObject有一个start()这样的方法:

public void start() {
    final Handler onStartHandler = new Handler();
    new Thread() {
        @Override
        public void run() {
            super.run();

            onStartHandler.post(new Runnable() {
                @Override
                public void run() {
                    mIsRunning = true;
                    onStart();
                }
            });
        }
    }.start();
}
Run Code Online (Sandbox Code Playgroud)

我想测试onStart()是否被调用.所以我尝试了类似的东西:

public void testOnStartIsCalled() {
    assertFalse("onStart() should not be called", mMyObject.isRunning());
    mMyObject.start();
    assertTrue("onStart() should be called", mMyObject.isRunning());
    mMyObject.stop();
    assertFalse("onStop() should be called", mMyObject.isRunning());
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用,我想这是因为它在Handler和一个新线程中.

我的测试类扩展了AndroidTestCase.我该怎么办 ?这种情况的最佳做法是什么?

问候.

multithreading android unit-testing handler

6
推荐指数
1
解决办法
7105
查看次数

Java中是否有类似android.os.Handler的类?

Android中的Handler用于在类之间发送消息.例如:

public class Foo
{

    private Handler handler;

    public Foo(Handler handler)
    {
        this.handler = handler;

        // ...
    }

    public void fooMethod()
    {
        // ...
        handler.obtainMessage("blah blah").sendToTarget();
    }

}
Run Code Online (Sandbox Code Playgroud)

主要:

public class Main
{
    private Handler handler;

    public Main()
    {
        handler = new Handler()
        {
            @Override
            public void handleMessage(Message msg)
            {
                // handle the message that is sent from Foo
            }
        };

        Foo f = new Foo(handler);

        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

所以,我在Java中寻找类似的技术,还是应该实现自己的处理程序?

java android design-patterns listener handler

6
推荐指数
1
解决办法
3034
查看次数

django教程:自定义404和500视图

Windows 7
Python 2.7.3
Django 1.5
python manage.py runserver

我正在关注" https://docs.djangoproject.com/en/1.5/intro/tutorial03/ "上提供的教程.

在事情变得奇怪之前,我得到了"写一个404(页面未找到)视图".

我试图找出如何制作自定义404视图.但是,我不确定:

答:自定义404.html文件应该驻留在哪里.它应该在我的项目目录树中还是在我的Django目录树中.我的项目目录树看起来像这样,

1> mysite  
2>     - mysite  
3>     - polls  
4>         - templates  
5>             - polls  
6>     - templates  
7>         - admin  
Run Code Online (Sandbox Code Playgroud)

目前404.html是@ 6>

B.必须在哪些地方进行哪些修改?我知道需要在'root'url conf中设置handler404和handler500.我有一个url.py驻留在@ 2>和3>(参见上面的树).假设2>是正确的位置我假设语法如下,

handler404 = 'templates.404'
handler500 = 'templates.500'
Run Code Online (Sandbox Code Playgroud)

还需要设置什么,在哪里?

handler http-status-code-404

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

无法理解Android蓝牙示例中的mHandler.obtainMessage()

我正在研究蓝牙rfcomm连接.Android Sample中有一行我无法理解,不幸的是我在其他问题和资源中找不到合适的答案.

这是整个代码:

public void run() {
        byte[] buffer = new byte[1024];  // buffer store for the stream
        int bytes; // bytes returned from read()

        // Keep listening to the InputStream until an exception occurs
        while (true) {
            try {
                // Read from the InputStream
                bytes = mmInStream.read(buffer);
                // Send the obtained bytes to the UI activity
                mHandler.obtainMessage(MESSAGE_READ, bytes, -1, buffer)
                        .sendToTarget();
            } catch (IOException e) {
                break;
            }
        }
    }

    /* Call this from the main activity to send …
Run Code Online (Sandbox Code Playgroud)

java android bluetooth inputstream handler

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

Android Handler改变了WeakReference

我的静态处理程序有一个WeakReference对我Activity(这是为了防止记录良好的内存泄漏问题).

我发布了一条很长的延迟消息,我希望这条消息传递给我的活动(应该在前台).

我担心的是,在方向改变时,我的活动被破坏,处理程序引用了应该被销毁的旧活动.

为了在我onCreate的活动中解决这个问题,我这样做了.

    if(mHandler == null)
        mHandler = new LoginHandler(this);
    else {
        mHandler.setTarget(this);
    }
Run Code Online (Sandbox Code Playgroud)

我的处理程序被声明为一个静态全局变量:

private static LoginHandler     mHandler            = null;
Run Code Online (Sandbox Code Playgroud)

并且实现类也是静态的,如下所示:

private static class LoginHandler extends Handler {

    private WeakReference<LoginActivity>    mTarget;

    LoginHandler(LoginActivity target) {
        mTarget = new WeakReference<LoginActivity>(target);
    }

    public void setTarget(LoginActivity target) {
        mTarget = new WeakReference<LoginActivity>(target);
    }

    @Override
    public void handleMessage(Message msg) {
        // process incoming messages here
        LoginActivity activity = mTarget.get();
        switch (msg.what) {
            case Constants.SUCCESS:
                activity.doSomething();
                break;

            default: …
Run Code Online (Sandbox Code Playgroud)

android weak-references handler

6
推荐指数
1
解决办法
3234
查看次数

Android View.postDelayed泄漏引用吗?

我想知道View.postDelayed当视图与父视图分离时,传递的runnable是否会被自动删除.

我查看了View课程的来源,并将其发布给了一些Handler外面的内容.但该处理程序的生命周期尚不清楚.

有人知道答案吗?

android view handler

6
推荐指数
1
解决办法
863
查看次数