当前位置: 首页 > 知识库问答 >
问题:

为什么Observable.create()不能单独单击?

鞠征
2023-03-14

在我的应用程序中,我在menuitemclicked中添加了Observable方法,但当我点击它两次时,它仍然起作用。单次按压。方法不工作,但按钮工作良好,任何建议或方法中的任何更改。

case R.id.upload:

fetch()中断;

return io.reactivex.Observable.create(new ObservableOnSubscribe<Data>() {
    @Override
    public void subscribe(ObservableEmitter<Data> emitter) throws Exception {


        try {


            final Cursor cursor = getActivity().getContentResolver().query(android.provider.ContactsContract.CommonDataKinds.Phone.CONTENT_URI, new String[]{"display_name", "data1"}, null, null, null);


            //  final Map contact =new HashMap();


            while (cursor.moveToNext()) {

                Data data = new Data();


                try {

                    String name = cursor.getString(cursor.getColumnIndex(Display_name));
                    String number = cursor.getString(cursor.getColumnIndex(Data1));
                    data.setContact_name(name);
                    data.setNumber(number);

                    Thread.sleep(60);

                    emitter.onNext(data);

                } catch (Exception e) {

                    Toast.makeText(context, "not insert , Toast.LENGTH_SHORT).show();
                }
            }

            emitter.onComplete();
        }catch (Exception e){

            emitter.onError(e);
        }

        }


});
void fetch(){
      }

      @Override
      public void onNext(Data data) {


          data.Contact_name=data.getContact_name();
          data.number=data.getNumber();


              String name=  data.Contact_name;
              String number=   data.number;





          }




              count++;
              textprogress.setText(String.valueOf(count));







          }

      }

      @Override
      public void onError(Throwable e) {

      }

      @Override
      public void onComplete() {

      }
  });

}

共有1个答案

桂志诚
2023-03-14

因为您没有像这样在主线程中运行UI

new Handler(Looper.getMainLooper()).post(new Runnable() {
                 @Override
                 public void run() {

                     textprogress.setVisibility(View.VISIBLE);
                     textprogress.setVisibility(View.VISIBLE);

                 }
             });
 类似资料:
  • 我无法推到音频列表。重要提示:我不想将listOf更改为mutableListOf 虽然音频不是空的,但这不起作用。当我记录音频时,它给了我一个有数据的类,所以这不是问题所在。

  • 我正在开发一个需要调用一些Jenkins实例的应用程序,为此我使用jenkins-cli. jar 我可以使用命令行调用jar以轻松提取其输出。然而,我需要自己解析异常。 为了正确处理异常,我现在通过反射调用jar的main方法: 但现在,我需要以某种方式将jar打印的输出获取到系统中。我知道我可以使用这个系统。放样()。问题是,我有其他线程同时记录。我在这里读到了这个系统。out是特定于类加载器

  • 问题内容: 在OmniFaces中,FullAjaxExceptionHandler找到正确的错误页面以使用后,将调用JSF运行时来构建视图并呈现它,而不是包含AJAX调用的页面。 为什么这个?恕我直言,只是执行一个会更简单?是否有这样做的具体原因? 我们正在基于FullAjaxExceptionHandler编写我们自己的ExceptionHandler,并想了解这种设计背后的原因。 问题答案:

  • 一般来说,这样一种继承形式(增加某些方法的可见性是唯一的改变)是一种众所周知的实践吗?它可能有用的一些场景是什么(假设我们可以访问所有的代码)?

  • 为什么会这样?并不是说我绝对需要一个测试方法,我只是好奇而已。当您生成测试方法时,Visual Studio 2012不会给出警告或错误,即使它将无法运行。..

  • 本文向大家介绍kafka 可以脱离 zookeeper 单独使用吗?为什么?相关面试题,主要包含被问及kafka 可以脱离 zookeeper 单独使用吗?为什么?时的应答技巧和注意事项,需要的朋友参考一下 kafka 不能脱离 zookeeper 单独使用,因为 kafka 使用 zookeeper 管理和协调 kafka 的节点服务器。