나는 정말 안드로이드 프로그래밍에 익숙해 져서 어떤 도움을 주셔서 감사하겠습니다. 페이지를 훑어보고 올바른 대답을 찾지 못하는 것 같습니다. 이것이 비슷한 질문이라면 나는 솔직히 사과한다. 내 문제는) (나는 보좌관 내 안드로이드 장치에 코드를 쓸 때BigDecimal 반올림하지 않음 반올림하지 않음
pitch_round.setScale(2,BigDecimal.ROUND_UP);
가 잘 작동 아래 예제의 라운딩을 컴파일러 및 I 출력에 pitch_round.ToString를 사용하여 텍스트 뷰에 둥근 BigDecimal를 할 수 있었다이다 , 내가 이클립스에서 비슷한 코드를 사용했을 때 컴파일시 오류가 발생하지 않았지만, 텍스트 뷰에 대한 출력이 전혀 둥근 것처럼 보이지 않았다. 지금 실수로 더 많은 소수점 문자가있는 것처럼 보인다.
아래 코드는 작동하지 않는 코드입니다. 제가 지금 여기서하고 있지 않은 것이 있습니까? 모든 falues이 장치 에 보좌관에 사용 된 코드와 동일 수레 있습니다
pitch_round.setScale(2,BigDecimal.ROUND_UP);
pitch_round = pitch_round.setScale(2,BigDecimal.ROUND_UP);
BigDecimal
pitch = mOrientation[1]*57.2957795f;
roll= mOrientation[2]*57.2957795f;
yaw= mOrientation[0]*57.2957795f;
// change to bigdecimal object
BigDecimal pitch_round = new BigDecimal(pitch-zero_pitch);
BigDecimal roll_round = new BigDecimal(roll-zero_roll);
BigDecimal yaw_round = new BigDecimal(yaw-zero_yaw);
pitch_round.setScale(2,BigDecimal.ROUND_UP);
roll_round.setScale(2,BigDecimal.ROUND_UP);
yaw_round.setScale(2,BigDecimal.ROUND_UP);
Log.i(SENSOR_SERVICE, pitch_round.toString());
t_pitch.setTextColor(Color.CYAN);
t_roll.setTextColor(Color.CYAN);
t_yaw.setTextColor(Color.CYAN);
// log some output to test code
//Log.i(SENSOR_SERVICE, "Send Results"+ pitch);
t_pitch.setText(pitch_round.toString());
t_roll.setText(roll_round.toString());
t_yaw.setText(yaw_round.toString());