본삭금을 걸어놔서 수정이 안되네요... <div><br></div> <div>댓글창에 쓰려고 해도 동일한 글자가 반복적으로 들어갔다고 안되네요</div> <div><br></div> <div>소스 전체 올려볼게요.. </div> <div><br></div> <div>계속 봐도 뭐가 문젠지 모르겠어요</div> <div><br></div> <div><br></div> <div><div>package lee.whdghks913.customlistview;</div> <div><br></div> <div>import java.util.ArrayList;</div> <div>import java.util.Collections;</div> <div><br></div> <div>import android.app.Activity;</div> <div>import android.app.PendingIntent;</div> <div>import android.content.Context;</div> <div>import android.content.Intent;</div> <div>import android.graphics.drawable.Drawable;</div> <div>import android.nfc.NfcAdapter;</div> <div>import android.nfc.Tag;</div> <div>import android.os.Bundle;</div> <div>import android.view.LayoutInflater;</div> <div>import android.view.View;</div> <div>import android.view.ViewGroup;</div> <div>import android.widget.AdapterView;</div> <div>import android.widget.AdapterView.OnItemClickListener;</div> <div>import android.widget.BaseAdapter;</div> <div>import android.widget.ImageView;</div> <div>import android.widget.ListView;</div> <div>import android.widget.TextView;</div> <div>import android.widget.Toast;</div> <div><br></div> <div>import com.example.customlistview.R;</div> <div><br></div> <div>public class MainActivity extends Activity {</div> <div> private ListView mListView = null;</div> <div> private ListViewAdapter mAdapter = null;</div> <div> private NfcAdapter nfcAdapter;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>private PendingIntent pendingIntent;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>private TextView mhjTextView;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><br></div> <div> </div> <div> @Override</div> <div> protected void onCreate(Bundle savedInstanceState) {</div> <div> super.onCreate(savedInstanceState);</div> <div> setContentView(R.layout.activity_main);</div> <div> mhjTextView = (TextView) findViewById(R.id.mhjTextView);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/** 안드로이드에서 nfc를 인식하기위한 도구. **/</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>nfcAdapter = NfcAdapter.getDefaultAdapter(MainActivity.this);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>Intent intent = new Intent(this, getClass())</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/** 안드로이드 <=> nfc카드 양쪽에서 값을 전달하는 역할 **/</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>pendingIntent = PendingIntent.getActivity(MainActivity.this, 0, intent,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>0);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><br></div> <div> </div> <div> }</div> <div> </div> <div> @Override</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>protected void onResume() {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>// TODO Auto-generated method stub</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>super.onResume();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (nfcAdapter != null) {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/**</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> * 카드가 인식되면 값을 전달받을 : MainActivity.this(액티비티명) 안드로이드 <=> nfc카드 양쪽에서</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> * 값을 전달하는 역할 : pendingIntent</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> */</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>nfcAdapter.enableForegroundDispatch(MainActivity.this,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>pendingIntent, null, null);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>@Override</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>protected void onPause() {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>// TODO Auto-generated method stub</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>super.onPause();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (nfcAdapter != null) {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>nfcAdapter.disableForegroundDispatch(MainActivity.this);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>@Override</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>protected void onNewIntent(Intent intent) {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>// TODO Auto-generated method stub</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>super.onNewIntent(intent);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>mListView = (ListView) findViewById(R.id.mList);</div> <div> </div> <div> mAdapter = new ListViewAdapter(this);</div> <div> mListView.setAdapter(mAdapter);</div> <div> </div> <div> </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (tag != null) {</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>byte[] tagId = tag.getId();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>String code = toHexString(tagId);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>mhjTextView.setText("TagID:" + toHexString(tagId));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>Toast.makeText(this, toHexString(tagId), Toast.LENGTH_SHORT).show();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (code == "04F6B4C2392B80"){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> mAdapter.addItem(null,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "ㄱㄱㄱ",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "1313111");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> mAdapter.addItem(null,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "ㅇㅇㅇ",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "1000000");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> mAdapter.addItem(null,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "ㅅㅅㅅ",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "1111111");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> mAdapter.addItem(null,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "ㅁㅁㅁ",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "1010101");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> else {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> <span class="Apple-tab-span" style="white-space:pre;"> </span>mAdapter.addItem(null,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "ㅁㅁㅁ",</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> "1010101");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> <span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> }</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>public static final String CHARS = "0123456789ABCDEF";</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>public static String toHexString(byte[] data) {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>StringBuilder sb = new StringBuilder();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for (int i = 0; i < data.length; ++i) {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>sb.append(CHARS.charAt((data[i] >> 4) & 0x0F))</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>.append(CHARS.charAt(data[i] & 0x0F));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return sb.toString();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div> </div> <div> private class ViewHolder {</div> <div> public ImageView mIcon;</div> <div> </div> <div> public TextView mText;</div> <div> </div> <div> public TextView mDate;</div> <div> }</div> <div> </div> <div> private class ListViewAdapter extends BaseAdapter {</div> <div> private Context mContext = null;</div> <div> private ArrayList<ListData> mListData = new ArrayList<ListData>();</div> <div> </div> <div> public ListViewAdapter(Context mContext) {</div> <div> super();</div> <div> this.mContext = mContext;</div> <div> }</div> <div> </div> <div> @Override</div> <div> public int getCount() {</div> <div> return mListData.size();</div> <div> }</div> <div><br></div> <div> @Override</div> <div> public Object getItem(int position) {</div> <div> return mListData.get(position);</div> <div> }</div> <div><br></div> <div> @Override</div> <div> public long getItemId(int position) {</div> <div> return position;</div> <div> }</div> <div> </div> <div> public void addItem(Drawable icon, String mTitle, String mDate){</div> <div> ListData addInfo = null;</div> <div> addInfo = new ListData();</div> <div> addInfo.mIcon = icon;</div> <div> addInfo.mTitle = mTitle;</div> <div> addInfo.mDate = mDate;</div> <div> </div> <div> mListData.add(addInfo);</div> <div> }</div> <div> </div> <div> public void remove(int position){</div> <div> mListData.remove(position);</div> <div> dataChange();</div> <div> }</div> <div> </div> <div> public void sort(){</div> <div> Collections.sort(mListData, ListData.ALPHA_COMPARATOR);</div> <div> dataChange();</div> <div> }</div> <div> </div> <div> public void dataChange(){</div> <div> mAdapter.notifyDataSetChanged();</div> <div> }</div> <div> </div> <div> @Override</div> <div> public View getView(int position, View convertView, ViewGroup parent) {</div> <div> ViewHolder holder;</div> <div> if (convertView == null) {</div> <div> holder = new ViewHolder();</div> <div> </div> <div> LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);</div> <div> convertView = inflater.inflate(R.layout.listview_item, null);</div> <div> </div> <div> holder.mIcon = (ImageView) convertView.findViewById(R.id.mImage);</div> <div> holder.mText = (TextView) convertView.findViewById(R.id.mText);</div> <div> holder.mDate = (TextView) convertView.findViewById(R.id.mDate);</div> <div> </div> <div> convertView.setTag(holder);</div> <div> }else{</div> <div> holder = (ViewHolder) convertView.getTag();</div> <div> }</div> <div> </div> <div> ListData mData = mListData.get(position);</div> <div> </div> <div> if (mData.mIcon != null) {</div> <div> holder.mIcon.setVisibility(View.VISIBLE);</div> <div> holder.mIcon.setImageDrawable(mData.mIcon);</div> <div> }else{</div> <div> holder.mIcon.setVisibility(View.GONE);</div> <div> }</div> <div> </div> <div> holder.mText.setText(mData.mTitle);</div> <div> holder.mDate.setText(mData.mDate);</div> <div> </div> <div> return convertView;</div> <div> }</div> <div> }</div> <div>}</div> <div><br></div> <div><br></div> <div><br></div></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.