public void addHideList(View view) { for (int i = 0; i < this.mDatas.size(); i++) { if (this.mDatas.get(i).isCheck) { this.tempPackage = this.mDatas.get(i).className + ","; if (!this.packageHideList.contains(this.tempPackage)) { this.packageHideList += this.tempPackage; } } } changeSharedPreferences(this.packageHideList); } public void removeHideList(View view) { for (int i = 0; i < this.mDatas.size(); i++) { if (this.mDatas.get(i).isCheck) { this.tempPackage = this.mDatas.get(i).className + ","; if (this.packageHideList.contains(this.tempPackage)) { int postion = this.packageHideList.indexOf(this.tempPackage); int length = this.tempPackage.length(); int Length = this.packageHideList.length(); this.packageHideList = this.packageHideList.substring(0, postion) + this.packageHideList.substring(postion + length, Length); } } } changeSharedPreferences(this.packageHideList); } public void changeSharedPreferences(String packageHideList2) { SharedPreferences.Editor editor = getSharedPreferences("apphidelist", 0).edit(); editor.putString("classname", packageHideList2); editor.commit(); }
时间: 2024-02-14 08:18:49 浏览: 19
这段代码看起来像是一个 Android 应用程序的 Java 代码,其中包含了三个方法:addHideList、removeHideList 和 changeSharedPreferences。这些方法似乎是用来处理应用程序中的一些列表数据的。addHideList 方法中,它会遍历一个名为 mDatas 的列表,然后将其中选中的项的 className 添加到名为 packageHideList 的字符串中。removeHideList 方法和 addHideList 方法的逻辑类似,但是它会从 packageHideList 中移除选中的项。changeSharedPreferences 方法用于将 packageHideList 存储到应用程序的 SharedPreferences 中。
相关问题
public void onClick(View view) { if (view == this.vg_clock || view == this.vg_language || view == this.vg_version || view == this.vg_oilUnits || view == this.vg_controlLock || view == this.vg_disclaimers) { for (int i = 0; i < this.views.length; i++) { if (view == this.views[i]) { openFragmentByKey(this.mClassesKey[i]); return; } } } else if (view == this.vg_reset) { if (this.mRestoreFactoryManager == null) { this.mRestoreFactoryManager = new RestoreFactoryManager(); } this.mRestoreFactoryManager.showResetDialog((FragmentActivity) this.mContext); } }
这是一个Java方法的代码片段,其中包含一个名为onClick的方法。该方法接收一个View对象作为参数,并且没有返回值。
在该方法的实现中,首先通过比较view对象与vg_clock、vg_language、vg_version、vg_oilUnits、vg_controlLock、vg_disclaimers等View对象的引用,来判断用户点击了哪个View对象。如果用户点击的是这些View对象之一,那么就遍历一个名为views的View数组,查找与被点击的View对象相等的元素,然后调用一个名为openFragmentByKey的方法,并将对应的Fragment类的Key值作为参数传入。如果用户点击的是vg_reset View对象,那么就判断mRestoreFactoryManager对象是否为空,如果为空,则创建一个新的RestoreFactoryManager对象,并调用它的showResetDialog()方法,以弹出一个恢复出厂设置的对话框。
import java.awt.; import javax.swing.; import java.awt.event.*; public class jisuanqi{ public static void main (String args[]){ WindowView view=new WindowView(); view.setBounds(100,100,390,360); view.setTitle("简单计算器"); }} import java.awt.event.*; public class Listen2 implements ActionListener { WindowView view; //?????????????????????? public void setView(WindowView view) { //?????????????? this.view = view; } public void actionPerformed(ActionEvent e) { int i=0; // for(i=0;i<s.length;i++){ for(i=0;i<12;i++){ //?????????????????????? if(e.getSource()==view.button[i]){ //?????????????????????? view.textshow.append("+");} else{ System.out.println("错误"); } } } } import java.awt.; import javax.swing.; import java.awt.event.*; public class WindowView extends JFrame{ JTextArea textshow,a1; // JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12; JButton button[]=new JButton[14];; JPanel panel; Listen2 listen; // ??????????????? public WindowView(){ textshow = new JTextArea() ; panel =new JPanel(new GridLayout(4,4)); char []a={'0','1','2','3','4','5','6','7','8','9','+','-','='}; setLayout(new GridLayout(2,1)); add(textshow); add(panel); listen=new Listen2(); listen.setView(this); String []s=new String[a.length]; for(int i=0;i<a.length;i++){ s[i]=String.valueOf(a[i]); } int i=0; for(i=0;i<s.length;i++){ button[i]=new JButton(""+s[i]); panel.add(button[i]); button[i].addActionListener(listen); } setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } } 补全代码,实现一个简单计算器
下面是补全的代码,实现了一个简单计算器:
```java
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class jisuanqi {
public static void main(String args[]) {
WindowView view = new WindowView();
view.setBounds(100, 100, 390, 360);
view.setTitle("简单计算器");
}
}
class Listen2 implements ActionListener {
WindowView view;
public void setView(WindowView view) {
this.view = view;
}
public void actionPerformed(ActionEvent e) {
int i = 0;
for (i = 0; i < 14; i++) {
if (e.getSource() == view.button[i]) {
if (i < 10) {
view.textshow.append("" + i);
} else if (i == 10) {
view.textshow.append("+");
} else if (i == 11) {
view.textshow.append("-");
} else if (i == 12) {
view.textshow.append("=");
}
}
}
}
}
class WindowView extends JFrame {
JTextArea textshow;
JButton[] button = new JButton[14];
JPanel panel;
Listen2 listen;
public WindowView() {
textshow = new JTextArea();
panel = new JPanel(new GridLayout(4, 4));
char[] a = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '-', '='};
setLayout(new GridLayout(2, 1));
add(textshow);
add(panel);
listen = new Listen2();
listen.setView(this);
String[] s = new String[a.length];
for (int i = 0; i < a.length; i++) {
s[i] = String.valueOf(a[i]);
}
for (int i = 0; i < s.length; i++) {
button[i] = new JButton("" + s[i]);
panel.add(button[i]);
button[i].addActionListener(listen);
}
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}
```
这段代码实现了一个简单计算器的界面,其中按钮的点击事件通过ActionListener进行处理。每个按钮点击后会根据按钮的索引进行不同的操作,例如数字按钮会将相应的数字添加到文本显示区域,加减等号按钮则会添加相应的符号。