【问题标题】:How to add icon image button in android studio如何在android studio中添加图标图像按钮
【发布时间】:2015-10-31 10:43:13
【问题描述】:


我想设计这种类型的应用程序的布局(如图所示)。在此布局中,当我们单击圆形图标时,它会移动到下一页。我想知道它是怎么做的。

【问题讨论】:

标签: android android-layout android-intent android-activity


【解决方案1】:

在抽屉文件夹中创建 circle_background.xml 并将此代码放入其中:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
    <solid android:color="#FE4543"></solid>
     <stroke android:color="#FE4543" android:width="1dp"></stroke>

</shape>

所以现在在你的活动中添加这样的图像视图

<ImageView
        android:layout_width="wrap_content"
        android:gravity="center"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_action_search"
        android:padding="15dp"
        android:id="@+id/btn_search"
        android:background="@drawable/circle_background"
        />

如果你想为此添加点击操作,你必须使用类似这样的意图,我的视图 ID 是 btn_search 所以首先我必须像这样找到它,然后为它设置 onclick 监听器,如下所示

 ImageView btnSearch= (ImageView) findViewById(R.id.btn_search);
        btnSearch.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent= new Intent(getApplicationContext(),ExampleActivity.class)
                
            }
        });

【讨论】:

    【解决方案2】:

    我认为可以通过ImageButton简单实现的顶级。

    另一个需要一个带有圆形背景的Layout,并包含ImageViewTextView

    希望对你有所帮助。

    【讨论】:

      【解决方案3】:
      public class TourActivity extends AppCompatActivity {
          private ImageView tour;
      
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_tour);
      
              tour = (ImageView) findViewById(R.id.tour);
              tour.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v) {
                      Intent intent= new Intent(getApplicationContext(),FirstActivity.class);
                          launchThird();
                  }
              });
          }
      
          private void launchThird() {
      
              Intent intent = new Intent(this, FirstActivity.class);
              startActivity(intent);
          }
      }
      

      【讨论】:

      • 您需要为答案提供更多信息,而不仅仅是代码。考虑解释问题所在,或者您如何解决最初的问题
      猜你喜欢
      • 1970-01-01
      • 2011-05-11
      • 1970-01-01
      • 1970-01-01
      • 2020-10-11
      • 2019-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多