Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java performClick未触发_Java_Android - Fatal编程技术网

Java performClick未触发

Java performClick未触发,java,android,Java,Android,我正试着点击旋转木马。我想,如果我按下前进按钮,它会自动触发对旋转木马的点击,然后向前移动。手动单击(物理触摸)正在工作,但performClick()不工作。代码如下 //************* Forward Button: Select Objects ************* Button forwardButton = (Button)this.findViewById(R.id.ForwardButton); forwardButton.setOnClickLi

我正试着点击旋转木马。我想,如果我按下前进按钮,它会自动触发对旋转木马的点击,然后向前移动。手动单击(物理触摸)正在工作,但performClick()不工作。代码如下

//************* Forward Button: Select Objects *************
    Button forwardButton = (Button)this.findViewById(R.id.ForwardButton);
    forwardButton.setOnClickListener(new OnClickListener() {
     @Override
      public void onClick(View v) {
          Intent i = new Intent(NewFieldTrip.this, SelectObjects.class);
         //ImagePosition = (int)carousel.getSelectedItemId();
          carousel.performClick();
          i.putExtra("SelectedScene",ImagePosition);
          startActivity(i);

      }
    });

    carousel.setOnItemClickListener(new CarouselAdapter.OnItemClickListener(){
    @Override
    public void onItemClick(CarouselAdapter<?> parent, View view,
            int position, long id) {                
        Toast.makeText(NewFieldTrip.this, "Select Position=" + position, Toast.LENGTH_SHORT).show();
        ImagePosition = position;
    }

  });

旋转木马是什么类型的?列表视图

那么,如果旋转木马是ListView,那么在ListView上单击时您希望发生什么事件

performClick()触发OnClickListener,您没有将其设置为cаrousel。您设置了OnItemClickListener,因此必须调用performItemClick(…)。试试看

UPD:

尝试执行以下操作:

1)make方法Carousel.scrollToChild(inti)public

2)

int itemCount = carousel.getAdapter().getCount();
int item = new Random().nextInt(itemCount);
View view - carousel.getAdapter().getView(item, null, null);
int itemId = carousel.getAdapter().getItemId(item);
carousel.scrollToChild(item);
carousel.performItemClick(view, item, itemId);

好吧,这是有意义的,我正在这个链接上实现一个3d旋转木马:。。。我想在旋转木马上的任意位置执行项目单击以触发我想要的,这三个参数是视图、位置、行id,我现在无法确定它们:sDo您想在随机旋转木马元素上执行单击吗?sry,发生了电源故障。。实际上,我想在旋转木马上的任意位置执行一次单击,这会使它变得随机。。但是我不明白视图、位置和行id的必要性,我不能简单地说它吗?如果我跳过自动单击部分,我通过单击旋转木马上的任意位置并继续另一个按钮来实现我的目标,我想自动单击旋转木马
int itemCount = carousel.getAdapter().getCount();
int item = new Random().nextInt(itemCount);
View view - carousel.getAdapter().getView(item, null, null);
int itemId = carousel.getAdapter().getItemId(item);
carousel.scrollToChild(item);
carousel.performItemClick(view, item, itemId);