+++ /dev/null
-package jp.ac.titech.sharp4k.cuten;
-
-import jp.ac.titech.sharp4k.cuten.sampletask.ECCTask;
-import android.app.Activity;
-import android.os.Bundle;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.LinearLayout;
-import android.widget.Toast;
-
-public class ECCctivity extends Activity implements ResultSender,
- OnClickListener {
- private BaseApp taskApp;
-
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- taskApp = new ECCTask();
- taskApp.setSender(this);
- taskApp.setCloseRequester(new CloseRequester() {
- @Override
- public void close() {
-
- }
- });
- LinearLayout layout = new LinearLayout(this);
- layout.setOrientation(LinearLayout.VERTICAL);
- Button b = new Button(this);
- b.setOnClickListener(this);
- layout.addView(b);
- layout.addView(taskApp.createView(this, this.getResources()));
- setContentView(layout);
- }
-
- @Override
- public void onClick(View v) {
- taskApp.onClose();
- }
-
- @Override
- public void send(int[] results) {
- String str = "";
- for (Integer i : results) {
- str += i.toString() + ",";
- }
- Toast.makeText(this, str, Toast.LENGTH_SHORT).show();
- }
-}
\ No newline at end of file
package jp.ac.titech.sharp4k.cuten.sampletask;
import java.util.ArrayList;
+import java.util.HashSet;
import jp.ac.titech.sharp4k.cuten.R;
import android.content.Context;
Resources res;
float width, height;
int row, col, checkrow, checkcol;
- int[] cAnswer;
- ArrayList<Integer> uAnswer;
+ int[] ansArray;
+ HashSet<Integer> cAnswer, uAnswer;
String[] bits;
ArrayList<Rect> selRects;
col = res.getInteger(R.integer.col);
checkrow = res.getInteger(R.integer.checkrow);
checkcol = res.getInteger(R.integer.checkcol);
- cAnswer = res.getIntArray(R.array.answer);
- uAnswer = new ArrayList<Integer>();
+ cAnswer = new HashSet<Integer>();
+ ansArray = res.getIntArray(R.array.answer);
+ for (int i = 0; i < ansArray.length; i++) {
+ cAnswer.add(ansArray[i]);
+ }
+ uAnswer = new HashSet<Integer>();
bits = res.getStringArray(R.array.code);
selRects = new ArrayList<Rect>();
}
public void reset() {
bits = res.getStringArray(R.array.code);
- uAnswer = new ArrayList<Integer>();
+ uAnswer = new HashSet<Integer>();
selRects = new ArrayList<Rect>();
invalidate();
}
public int finish() {
- boolean check;
- if (uAnswer.size() == cAnswer.length) {
- for (int i = 0; i < cAnswer.length; i++) {
- check = false;
- for (int j = 0; j < uAnswer.size(); j++) {
- if (cAnswer[i] == uAnswer.get(j)) {
- check = true;
- }
- }
- if (!check) {
- return 0;
- }
- }
+ if (uAnswer.equals(cAnswer)) {
return 100;
+ } else {
+ return 0;
}
- return 0;
}
}
\ No newline at end of file