마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

비콘에서 가져온 rssi값 중 제가 지정한 값에 가장 가까운 값을 찾고 싶습니다

0 추천
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import com.perples.recosdk.RECOBeacon;

import java.util.ArrayList;
import java.util.Collection;

public class RecoRangingListAdapter extends BaseAdapter {
    private ArrayList<RECOBeacon> mRangedBeacons;
    private LayoutInflater mLayoutInflater;
    public int mRssi;

    public RecoRangingListAdapter(Context context) {
        super();
        mRangedBeacons = new ArrayList<RECOBeacon>();
        mLayoutInflater = LayoutInflater.from(context);
    }

    public void updateBeacon(RECOBeacon beacon) {
        synchronized (mRangedBeacons) {
            if(mRangedBeacons.contains(beacon)) {
                mRangedBeacons.remove(beacon);
            }
            mRangedBeacons.add(beacon);
        }
    }

    public void updateAllBeacons(Collection<RECOBeacon> beacons) {
        synchronized (beacons) {
            mRangedBeacons = new ArrayList<RECOBeacon>(beacons);
        }
    }

    public void clear() {
        mRangedBeacons.clear();
    }

    @Override
    public int getCount() {
        return mRangedBeacons.size();
    }

    @Override
    public Object getItem(int position) {
        return mRangedBeacons.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

   public void getRssi(int position){
        RECOBeacon recoBeacon = mRangedBeacons.get(position);

        mRssi = recoBeacon.getRssi();
    }

}

 

 

getRssi메소드로 rssi값을 가져왔는데 이 가져온 값들 중 제가 지정한 값에 가장 가까운 값을 찾으려면 어떻게 코딩해야 할까요..?

난나니뇨 (190 포인트) 님이 2016년 7월 20일 질문

1개의 답변

0 추천
지정한 값이 10 이라고 가정하고

들어온 값들이 14, 2, 18, 1 이라고 치면

 

10 - 들어온 값의 절대값이 가장 작은 값으로 해주시면 되겠죠.
모나미153 (17,540 포인트) 님이 2016년 7월 20일 답변
...