我制作了一个由6个水平线性布局组成的垂直线性布局。每个水平布局在滚动视图上包含10个以上的按钮。下面是主要的线性布局,其中包含一个水平布局。
<LinearLayout android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp"
android:gravity="center"
xmlns:android="http://schemas.android.com/apk/res/android">
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="75dp">
<Button
android:id="@+id/button1"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button1"/>
<Button
android:id="@+id/button2"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button2"/>
<Button
android:id="@+id/button3"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button3"
android:text="" />
<Button
android:id="@+id/button4"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button4"
android:text="" />
<Button
android:id="@+id/button5"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button5"
android:text="" />
<Button
android:id="@+id/button6"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button6"
android:text="" />
<Button
android:id="@+id/button7"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button7"
android:text="" />
<Button
android:id="@+id/button8"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button8"
android:text=""
android:textSize="" />
<Button
android:id="@+id/button9"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button9"
android:text="" />
<Button
android:id="@+id/bCaitlyn"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/caitlynsplash"
android:text="" />
<Button
android:id="@+id/button10"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button10"
android:text=""
android:textSize="10.5dp" />
<Button
android:id="@+id/button11"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button11"
android:text=""
android:textSize="11dp" />
<Button
android:id="@+id/button12"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button12"
android:text="" />
<Button
android:id="@+id/button13"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button13"
android:text=""
android:textSize="11dp" />
</LinearLayout>
</HorizontalScrollView>
onClick命令似乎没有按下时执行的问题。按钮识别触摸(因为它改变颜色),但似乎没有任何事情发生。
package com.LeagueProject;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Project extends Activity implements View.OnClickListener{
Button Button1, Button2, Button3, Button4, Button5, Button6, Button7, Button8,
Button9, Button10, Button11, Button12, Button13;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
projectbuttons();
Button1.setOnClickListener(this);
Button2.setOnClickListener(this);
Button3.setOnClickListener(this);
}
// Assigned Buttons
private void projectbuttons() {
Button1 = (Button) findViewById(R.id.button1);
Button2 = (Button) findViewById(R.id.button2);
Button3 = (Button) findViewById(R.id.button3);
Button4 = (Button) findViewById(R.id.button4);
Button5 = (Button) findViewById(R.id.button5);
Button6 = (Button) findViewById(R.id.button6);
Button7 = (Button) findViewById(R.id.button7);
Button8 = (Button) findViewById(R.id.button8);
Button9 = (Button) findViewById(R.id.button9);
Button10 = (Button) findViewById(R.id.button10);
Button11 = (Button) findViewById(R.id.button11);
Button12 = (Button) findViewById(R.id.button12);
Button13 = (Button) findViewById(R.id.button13);
}
public void onClick(View v) {
int id = v.getId();
switch (id) {
case R.id.button1:
setContentView(R.layout.screen1);
break;
case R.id.button2:
setContentView(R.layout.screen2);
break;
case R.id.button3:
setContentView(R.layout.screen3);
break;
}
}
}
非常欢迎任何见解以及提示/技巧。
答案 0 :(得分:3)
当您在活动中implements View.OnClickListener
时,您必须这样做
覆盖它永远不会执行的onClick()
方法..
@Override
public void onClick(View v) {
.
.
.
}
答案 1 :(得分:2)
我使用默认按钮尝试了你的代码,没有给任何图像到按钮,它工作正常...它转到相应的布局....
答案 2 :(得分:0)
我不确定这是否是您所需要的,但您可以在布局文件中定义onClick()方法。
<Button
android:id="@+id/button1"
android:layout_width="75dp"
android:layout_height="75dp"
android:background="@drawable/button1"
android:onClick="onClick"
/>
你能试试吗?