我的应用程序中有4个活动,即菜单项,如果我点击第一个活动的菜单显示所有项目,但是第二个或前一个活动菜单不可点击,菜单项也没有显示,为所有活动提供了相同的编码,但我仍然没有得到结果。 这是我的第二个活动的代码
public class About extends Activity {
LinearLayout line1, line2;
ImageView menu;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_about);
line1=(LinearLayout) findViewById(R.id.ll1);
line2=(LinearLayout)findViewById(R.id.ll2);
menu=(ImageView)findViewById(R.id.menu);
menu.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
menu.setVisibility(View.VISIBLE);
// TODO Auto-generated method stub
line1.setVisibility(View.VISIBLE);
if (line2.getVisibility() == View.INVISIBLE || line2.getVisibility() == View.GONE) {
line2.setVisibility(View.VISIBLE); }
else {
line2.setVisibility(View.INVISIBLE);
}
}
});
ImageView home = (ImageView) findViewById(R.id.home);
home.setOnClickListener(new View.OnClickListener() {
public void onClick(View v){
startActivity(new Intent(About.this, Home.class));
}
});
ImageView jobs = (ImageView) findViewById(R.id.jobs);
jobs.setOnClickListener(new View.OnClickListener() {
public void onClick(View v){
startActivity(new Intent(About.this, Jobs.class));
}
});
ImageView log = (ImageView) findViewById(R.id.log);
log.setOnClickListener(new View.OnClickListener() {
public void onClick(View v){
startActivity(new Intent(About.this, Login.class));
}
});
ImageView about = (ImageView) findViewById(R.id.about);
about.setOnClickListener(new View.OnClickListener() {
public void onClick(View v){
startActivity(new Intent(About.this, About.class));
}
});
xml代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/black" >
<LinearLayout
android:id="@+id/ll1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/black"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true">
<ImageView
android:id="@+id/menu"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/menu" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll2"
android:layout_width="199dp"
android:layout_height="wrap_content"
android:background="@color/black"
android:layout_toRightOf="@+id/ll1"
android:visibility="gone"
>
<ImageView
android:id="@+id/about"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_above="@+id/textView1"
android:layout_toLeftOf="@+id/jobs"
android:src="@drawable/about" />
<ImageView
android:id="@+id/jobs"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/jobs" />
<ImageView
android:id="@+id/log"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/log" />
<ImageView
android:id="@+id/home"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/home" />
</LinearLayout>
答案 0 :(得分:0)
你必须@Override onClick Listener,只需在点击监听器之前添加@Override
@Override
public void onClick(View v) {
menu.setVisibility(View.VISIBLE);
// TODO Auto-generated method stub
line1.setVisibility(View.VISIBLE);
if (line2.getVisibility() == View.INVISIBLE || line2.getVisibility() == View.GONE) {
line2.setVisibility(View.VISIBLE); }
else {
line2.setVisibility(View.INVISIBLE);
}
}
});
答案 1 :(得分:0)
您是否尝试在onCLick方法中添加super.onClick(v);
作为第一行?