Tag: 处理程序

为什么要使用处理程序而runOnUiThread也一样?

我遇到了Handler和runOnUiThread两个概念。 但对我来说,它似乎仍然是一个疑问,因为它们究竟在哪些事实上有所不同。 他们都打算从后台线程做UI操作。 但是我们select这两种方法时要考虑哪些因素呢? 例如,考虑一个在后台执行Web服务的可运行Thread ,现在我想更新UI。 什么是最好的方式来更新我的用户界面? 我应该去Handler或runOnUiThread ? 我仍然知道我可以使用AsyncTask并使用onPostExecute 。 但我只想知道其中的差别。

停止处理程序()。postDelay

我通过new Handler()调用多个Handler()。postDelayed(new Runnable()…..如果我点击返回button,怎样才能阻止它? public class Tag1 extends Oberklasse implements OnClickListener { public Button btn; //private Handler myHandler = new Handler(); Handler handler; Runnable myRunnable; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.tt1); //Bildschirm soll anbleiben!!! getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); //Lautstärke BUttons enable setVolumeControlStream(AudioManager.STREAM_MUSIC); getActionBar().setTitle("Tag 1"); getActionBar().setDisplayHomeAsUpEnabled(true); //tt1.xml beschriften TextView textView = (TextView)findViewById(R.id.uebung1); textView.setText("Übung 1:"); TextView textView2 = (TextView)findViewById(R.id.uebung2); […]

Android中的处理程序和内存泄漏

请看下面的代码: public class MyGridFragment extends Fragment{ Handler myhandler = new Handler() { @Override public void handleMessage(Message message) { switch (message.what) { case 2: { ArrayList<HashMap<String,String>> theurls = (ArrayList<HashMap<String,String>>) message.obj; urls.addAll(theurls); theimageAdapter.notifyDataSetChanged(); dismissBusyDialog(); break; }}}}; } 当我使用这样的处理程序时,我得到一个警告“处理程序应该是静态的,否则它容易发生内存泄漏”。 有人能告诉我什么是最好的办法吗?

java.lang.RuntimeException:Handler(android.os.Handler)将消息发送给死线程上的Handler

在我的应用程序我使用IntentService发送短信。 @Override protected void onHandleIntent(Intent intent) { Bundle data = intent.getExtras(); String[] recipients = null; String message = getString(R.string.unknown_event); String name = getString(R.string.app_name); if (data != null && data.containsKey(Constants.Services.RECIPIENTS)) { recipients = data.getStringArray(Constants.Services.RECIPIENTS); name = data.getString(Constants.Services.NAME); message = data.getString(Constants.Services.MESSAGE); for (int i = 0; i < recipients.length; i++) { if(!StringUtils.isNullOrEmpty(recipients[i])) { try { Intent sendIntent […]

如何通过多个活动返回结果

在我的应用程序的某些部分有一个这样的活动的结构: Activity A是我的家庭活动,在每一个stream程或stream程之后,我都会回来。 Activity B是一个简单的确认活动。 Activity C是另一个确认活动。 Activity D做了一些过程,最终它将结果返回到我的家庭活动( Activity A )。 要求: Activity B和C : 必须在那里,不能合并成一个。 当它被点击取消button时,它会调用finish()并不执行任何操作。 当点击确定button时,按照stream程和当前活动调用finish() 题: 我正在考虑使用startActivityForResult()但我从来没有用它来通过多个活动传递结果.. 我也想过传递一个handler (在Activity A创build),它调用Activity A上的某个方法,并在Activity D上执行… 我怎么能实现它?

ASP.NET:如何从处理程序访问会话?

我想从一个处理程序页面的会话中存储一些值之前,我redirect到一个WebForms页面,将拿起会话值和预填充WebForm: public class Handler : IHttpHandler { public void ProcessRequest(HttpContext context) { … context.Session["StackOverflow"] = "overflowing"; context.Response.Redirect("~/AnotherPage.aspx"); … } … } 除了context.Session对象为空。 我如何从处理程序访问会话状态?

如何从postDelayed添加的处理程序对象中删除runnable?

我有一个“打开”animation,并使用Handler.postDelayed(Runnable, delay)在短暂的延迟后触发“closures”animation。 但是,在打开和closures之间的时间内,可能还有另一个点击触发的animation。 我的问题是,我将如何取消处理程序中的“closures”animation?

自定义EventHandler与EventHandler <EventArgs>

最近我一直在想这个代码之间是否有任何显着的区别: public event EventHandler<MyEventArgs> SomeEvent; 和这个: public delegate void MyEventHandler(object sender, MyEventArgs e); public event MyEventHandler SomeEvent; 他们都做同样的事情,我没有能够说出任何的区别。 尽pipe我已经注意到.NET Framework的大多数类都使用自定义事件处理程序委托来处理事件。 这是否有特定的原因?

Java中的事件监听器和处理器有什么区别?

在一般的术语中,有事件的监听器和处理程序。 我的意思是我在不知不觉中使用它们,只要在API中可用即可。 我的问题是,我们在什么情况下使用监听器,以及在什么情况下使用处理器来处理事件? 他们之间有什么区别? 特点? 我查找了原因,找不到Java的正确解释。

Android中的Looper,Handler和MessageQueue之间有什么关系?

我已经检查了Looper , Handler和MessageQueue的官方Android文档/指南。 但我无法得到它。 我是Android新手,对这些概念感到困惑。