0
정말 도움이 필요합니다. 나는 3 개의 editText를 가지고 있는데, 그 중 2 개의 입력을 hh : mm : ss로 가져와야합니다. 그런 다음 배열과 for 루프를 사용하여 차이를 찾고 세 번째 editText에 텍스트로 설정합니다. 모든 입력이 좋을 것입니다! 종료 시간 등의 6 : 5 : 시작 시간 4로 3 : 2 : 배열 요소 differerences for 루프를 사용하여
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
end = (EditText) findViewById(R.id.etEnd);
start = (EditText) findViewById(R.id.etStart);
diff = (EditText) findViewById(R.id.etDiff);
calc = (Button) findViewById(R.id.bCalc);
clear = (Button) findViewById(R.id.bClear);
calc.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
int h1 = s[0];
int m1 = s[1];
int s1 = s[2];
int h2 = e[0];
int m2 = e[1];
int s2 = e[2];
String sGet2 = end.getText().toString(); // end to string
String sGet1 = start.getText().toString(); // start to string
String[] erA = sGet2.split(":"); // end string to end array
String[] srA = sGet1.split(":"); // start string to string array
for (int i = 0; i < srA.length; i++) {
inted = Integer.parseInt(erA[i].trim());
intst = Integer.parseInt(srA[i].trim());
s[i] = intst;
e[i] = inted;
}
if (s2 > s1) {m1--;s1 += 60;}
if (m2 > m1) {h1--;m1 += 60;}
int H, M, S;
S = s1 - s2;
M = m1 - m2;
H = h1 = h2;
diff.setText(H + ":" + M + ":" + S);
}
});
}
}
*
또한 I는 1이 실행할 경우. 그것은 종료 시간의 마지막 숫자 만 뱉어 낸다. 종료 시간을 3 : 4 : 5로 설정하면 editText에 5가 표시됩니다.
오타 또는 실수입니까, 아니면 'H = h1 - h2;'가 아니라 'H = h1 - h2;'(마이너스 대신 등호)가 필요합니까? '[]'와'e []'선언은 무엇입니까? –
그게 실수였습니다. int [] s; \t int [] e; * 이제 Calc 버튼을 누르면 충돌이 발생합니다. –