【问题标题】:Android ImageView onclicklistenener not workingAndroid ImageView onclicklistener不工作
【发布时间】:2013-03-03 07:22:46
【问题描述】:

我是 android 新手,我尝试在图像视图上实现 onclicklistener。但它不工作..请帮助。当我点击图片时它没有反应。

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        //Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        ImageView ad = (ImageView) findViewById(R.id.imageView1);
        ad.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
            startActivity(new Intent(MainActivity.this, ads.class));
            }
        });



        return true;

    }


}

这是我的代码...

【问题讨论】:

  • 您的ImageView 在您的选项菜单布局中吗?

标签: android imageview android-imageview


【解决方案1】:

我认为你应该在onCreate() 中声明你的ImageView 如下:

 public class MainActivity extends Activity {
    @Override
   protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ImageView ad = (ImageView) findViewById(R.id.imageView1);
      ad.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
        startActivity(new Intent(MainActivity.this, ads.class));
        }
    });
}        

【讨论】:

  • 这就是答案!我在 oncreatedview() 中创建了监听器 :)
【解决方案2】:

你有两个问题

第一:

startActivity(new Intent(MainActivity.this, ads.class));

第二个参数应该是一个活动

第二:

在您的情况下,ImageView 和侦听器应该在您的 onCreate()

【讨论】:

    【解决方案3】:

    当我遇到类似问题时,我通过添加android:layout_width="44dp" 来解决它,以确保用户有足够的区域可以点击。然后,您可以按照您想要的方式对齐图像内容。就我而言:

        <ImageView
        android:id="@+id/locationImageView"
        android:layout_width="44dp"
        android:layout_height="16dp"
        android:layout_centerVertical="true"
        android:layout_marginStart="4dp"
        android:layout_toEndOf="@id/locationText"
        android:adjustViewBounds="true"
        android:scaleType="fitStart"
        android:src="@drawable/icn_edit_small_white"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-25
      • 1970-01-01
      • 2015-04-06
      • 2022-01-24
      相关资源
      最近更新 更多