java普通类方法_java – 从普通类方法开始新活动

我不知道如何在一个可以启动另一个活动的类中编写方法.

我有一个带5个按钮的页脚,每个按钮都应该开始一个新的活动.我想用5个开始活动的方法创建一个类.

我想做那样的事情:

我的Footer_buttons课程:

public class Footer_buttons{

//Back to Home activity

public static void home_footer(Context context) {

Intent intent = new Intent(context, Home_page.class);

context.startActivity(intent);

}

}

在我的一项活动中,我想称之为:

private static Context context;

....

context = this;

....

public void home_footer(View view) {

Footer_buttons.home_footer(context);

}

解决方法:

您可以通过几种不同的方式指定按钮应执行的行为.

xml onClick属性

首先,按钮具有名为onClick的xml属性.您可以为此属性指定方法名称:

android:id="@+id/btnMyButton"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/lbl_click_here"

android:onClick="goToActivity" />

此按钮将调用此布局所属的Activity中的goToActivity方法.

public void goToActivity(View view) {

Intent i = new Intent(this,NewActivity.class);

startActivity(i);

}

片段中的onClickListener

以下示例在片段的onCreateView事件期间将onClickListener应用于片段布局中的按钮.

这是片段的xml中的按钮:

android:id="@+id/btnMyButton"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/lbl_click_here" />

请注意,我们不再使用按钮的onClick xml属性.

onClickListener是一个接口,可以在fragment类中实现为匿名类:

View rootView = inflater.inflate(R.layout.fragment_main, container, false);

// Find your button in the layout.

Button btnMyButton = (Button) rootView.findViewById(R.id.btnMyButton);

btnMyButton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

Intent i = newIntent(getActivity(),NewActivity.class);

startActivity(i);

}

});

活动中的onClickListener

以下示例在片段的onCreate事件期间将onClickListener应用于Activity的布局中的按钮.

这是片段的xml中的按钮:

android:id="@+id/btnMyButton"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/lbl_click_here" />

我们再次使用按钮的onClick xml属性.

onClickListener接口现在作为活动类内部的匿名类实现:

// Find your button in the layout.

Button btnMyButton = (Button)findViewById(R.id.btnMyButton);

btnMyButton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

Intent i = newIntent(this,NewActivity.class);

startActivity(i);

}

});

在运行时查找xml元素

在运行时查找xml元素,如前两个示例所示,需要为元素分配一个id:

android:id="@+id/btnMyButton"

并且在调用代码中引用了此ID:

R.id.btnMyButton

当一个活动在其布局中查找元素时,它可以直接调用findByView方法,如下所示:

Button btnMyButton = (Button)findViewById(R.id.btnMyButton);

当片段在其布局中查找元素时,它必须首先在其自己的视图上调用findViewByID,如下所示:

Button btnMyButton = (Button) rootView.findViewById(R.id.btnMyButton);

铸件

请注意,在两个示例中,findViewByID的返回值都被强制转换为声明的类型 – 在本例中为Button.

Button btnMyButton = (Button)...

findViewByID默认返回View – View是Button的父级,代表最常规的类型.

标签:java,android,android-activity

来源: https://codeday.me/bug/20190703/1362307.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值