java - 如何将值从 Button.setOnClickListener 传递到 onDateSet Android

标签 java android

我有一个名为 InboxActivity 的类,我在其中使用了日期选择器,我需要从

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_inbox);



        btn_outbox = (Button)findViewById(R.id.btn_outbox);
        btn_outbox.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {

                    **FROM HERE!!!!**

            }
        }); 

到这里:

    DatePickerDialog.OnDateSetListener d = new DatePickerDialog.OnDateSetListener() {


        public int Syear;
        public int Smonth;
        @Override

        public void onDateSet(DatePicker view, int year, int monthOfYear,
                int dayOfMonth) {
});

如何做到这一点?

最佳答案

我会尝试真正快速地测试它,但我很确定如果您在类中实现 OnClickListener 的接口(interface),然后覆盖 onClick(),您可以在类中使用私有(private)变量来执行您想要的操作。

public class InboxActivity extends Activity implements OnClickListener{
    ....

然后在你的 Activity 中

private String data;

onCreate(Bundle savedInstanceState){
    ....
    btn_outbox.setOnClickListener(this);

    ....
    DatePickerDialog.OnDateSetListener d = new DatePickerDialog.OnDateSetListener(){

        public int Syear;
        public int Smonth;

        @Override
        public void onDateSet(DatePicker view, int year, int monthOfYear,
                int dayOfMonth) {
            // Do what you need to, data string works here

        }

    };
}


onClick(View v){
    data = "some string";
}

关于java - 如何将值从 Button.setOnClickListener 传递到 onDateSet Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22411165/

相关文章:

android - ContentObserver 的生命周期?

android - 检测 WebView 中的选择更改

当 Gradle 具有更改 APK 名称的自定义逻辑时,Android Studio 会将无菌 APK 上传到设备

java - 具有文件系统依赖性的单元测试 - 隐藏文件

android - 在 android 中解析 XML 时的字符编码问题

java - 将一个数均匀随机分成m份

java - 为整个 Eclipse GUI 换肤,而不仅仅是代码窗口

android - 如何检查文件夹是否循环为空?

java - 小程序或应用程序应该捕获错误异常吗?

java - 谷歌应用程序引擎确定代码是否在流量分配的实例上运行