如何为Android Studio中的每种意图启动类的新实例

菲尔·亚历克斯(Phill Alexakis):

我创建一个编辑器Android,并为每个类型的 ImageView我创建一个.class

的类型ImageViews如下:

private Class<?> popups[] = {
Clock_pop_up.class, TV_kitchen_pop_up.class, Thermometer_pop_up.class, CoffeeMachine_pop_up.class, Fridge_pop_up.class, Oven_pop_up.class, Air_pop_up.class, TV_livingroom_pop_up.class
};

我已经用修改了这些类,<style>每个Intent显示为一个弹出对话框

问题是这样的:

Intent intent = new Intent(getApplicationContext(), (Class<?>) popups[finalI]);
startActivity(intent);

它正确显示了弹出窗口,尽管如果.class在网格上自身重复出现,则每两个或更多相同的类我都有相同的“设置”

例如

假设我添加了一个,Clock_pop_up.class然后将“设置”设置为“ 小时”为06,“ 分钟”为05

在此处输入图片说明

然后,我将添加一个Thermometer_pop_up.class并设置“设置”

在此处输入图片说明

问题:如果我添加另一个Clock_pop_up.classThermometer_pop_up.class,我将获得之前的设置“设置”

在此处输入图片说明

我已经尝试过了:

是否有任何其他方式,我可以创造instances.class每一次我把时间ImageView发车?还有其他解决方法吗?

编辑:我不得不提到我正在使用static字段.class

菲尔·亚历克斯(Phill Alexakis):

通过HashMap每次PopUp.class将新对象添加到每个映射中,我设法做到了

例如:

新时钟对象:

import java.io.Serializable;

public class Clock implements Serializable {
    private String hour;
    private String minute;
    private String condition;

    public Clock(String hour, String minute,String condition) {
        this.hour = hour;
        this.minute = minute;
        this.condition=condition;
    }

    public Clock() {
    }

    public String getHour() {
        return hour;
    }

    public void setHour(String hour) {
        this.hour = hour;
    }

    public String getMinute() {
        return minute;
    }

    public void setMinute(String minute) {
        this.minute = minute;
    }

    @Override
    public String toString() {
        return "Test{" +
                "hour='" + hour + '\'' +
                ", minute='" + minute + '\'' +
                '}';
    }

    public String getCondition() {
        return condition;
    }

    public void setCondition(String condition) {
        this.condition = condition;
    }
}

Clock_pop_up.class我创建HashMap对象时,如下所示:

 public static  HashMap<String, Clock> currentObject = new HashMap<>(); 

因此,对于每一个PopUp.class我有一个HashMap为每个Object在网格布局事后我可以收集所有我Objects通过HashMap

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章