gpt4 book ai didi

java - 在android中使用java在点击事件上写在哪里

转载 作者:行者123 更新时间:2023-11-30 02:50:41 25 4
gpt4 key购买 nike

您好,我最近更新了 ADT,现在我正在使用 Eclipse 开发新的应用程序。所以我想知道在哪里写 setOnclickListner 事件。我想在点击按钮上打开另一个 Activity 。我尝试了各种组合,但每次都给我错误。我的eclipse版本:8.1.2.201302132326 请告诉我在哪里可以写代码?????

添加setContentView(R.layout.activity_main)之后;它给出了一个错误,不幸的是应用程序会弯腰。

我还删除了一些代码并运行它,但它不起作用。

例如。

 if (savedInstanceState == null) 
{
getFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();

}

public static class PlaceholderFragment extends Fragment 
{

public PlaceholderFragment()
{



}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);

return rootView;
}

}

此代码已从编码中删除,但没有用。

当我创建新的空白 Activity 时,将自动创建 fragment activity.xml,我想在 fragment activity.xml 文件中进行 GUI 更改。如果我在 activity.xml 中进行了更改,则会出现错误。

请帮帮我。

提前谢谢你..

这里是自动生成的代码...

    public class MainActivity extends Activity
{



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



if (savedInstanceState == null)
{
getFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();

}


}

@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);
return true;


}

@Override
public boolean onOptionsItemSelected(MenuItem item)
{
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings)
{
return true;
}

return super.onOptionsItemSelected(item);
}

/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment
{

public PlaceholderFragment()
{



}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);

return rootView;
}

}

}

最佳答案

你应该把按钮 fragment 容器,

所以,您需要访问您应该像这样指定的按钮,因为您的占位符 fragment 会膨胀 fragment_container.xml

的布局
Button b1=(Button)rootView.findViewById(R.id.button1);
b1.setOnclickListener(this);

在这种情况下实现 onClickLiistener 你的类,自动 onclick 将覆盖你的类

public class MainActivity extends Activity
{



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



if (savedInstanceState == null)
{
getFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();

}


}

@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);
return true;


}

@Override
public boolean onOptionsItemSelected(MenuItem item)
{
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings)
{
return true;
}

return super.onOptionsItemSelected(item);
}

/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment
{

public PlaceholderFragment()
{



}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);
final Activity contect=getActivity();
Button b1=(Button)rootView.findViewById(R.id.button1);
b1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent in=new Intent(contect,YourActivity.class);
startActivity(in);
}
}) ;

return rootView;
}

}

}

将按钮放在fragment_main 中,移动到其他一些 Activity

否则删除 fragment 并扩展 Activity 也会从代码和项目中删除 appcompat_v7 库。

删除库 Properties-->Android--> 从下面删除它

关于java - 在android中使用java在点击事件上写在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24243149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com