@SuppressLint("UseSparseArrays") public AlphabetWavesView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); final Resources res = context.getResources(); TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.AlphabetWavesView, defStyle, 0); mMaxOffset = a.getDimensionPixelSize(R.styleable.AlphabetWavesView_leMaxOffset, 54); mMoveCount = a.getInteger(R.styleable.AlphabetWavesView_leMoveCount, 7); mPopAnimTime = a.getInteger(R.styleable.AlphabetWavesView_lePopAnimTime, 120); mToastBg = a.getDrawable(R.styleable.AlphabetWavesView_leAlphabetToastBg); mSelectedBg = a.getDrawable(R.styleable.AlphabetWavesView_leSelectedBg); mToastOffset = a.getDimensionPixelSize( R.styleable.AlphabetWavesView_leToastOffset, res.getDimensionPixelSize(R.dimen.le_awv_toast_offset)); mToastTextSize = a.getDimensionPixelSize( R.styleable.AlphabetWavesView_leToastTextSize, res.getDimensionPixelSize(R.dimen.le_awv_toast_text_size)); mAlphabetTextSize = a.getDimensionPixelSize( R.styleable.AlphabetWavesView_leAlphabetTextSize, res.getDimensionPixelSize(R.dimen.le_awv_alphabet_text_size)); mAlphabetMaxOffset = a.getDimensionPixelSize( R.styleable.AlphabetWavesView_leAlphabetMaxOffset, res.getDimensionPixelSize(R.dimen.le_awv_alphabet_max_offset)); mPaddingTopBottom = a.getDimensionPixelSize( R.styleable.AlphabetWavesView_lePaddingTopBottom, res.getDimensionPixelSize(R.dimen.le_awv_padding_top_bottom)); mAlphabetLeftMargin = a.getDimensionPixelSize( R.styleable.AlphabetWavesView_leAlphabetLeftMargin, res.getDimensionPixelSize(R.dimen.le_awv_alphabet_left_margin)); a.recycle(); if (mToastBg == null) { mToastBg = res.getDrawable(R.drawable.le_alphabet_toast_bg); } if (mSelectedBg == null) { mSelectedBg = res.getDrawable(R.drawable.le_alphabet_selected_bg); } mViewWidth = res.getDimensionPixelSize(R.dimen.le_awv_width); mHandler = new GestureHandler(); mAlphabetList = new ArrayList<Alphabet>(); mAnimMap = new HashMap<Integer, ValueAnimator>(); mSelectedRect.set(0, 0, mSelectedBg.getIntrinsicWidth(), mSelectedBg.getIntrinsicHeight()); isShowSelected = true; mPreviewImage = new ImageView(context); mPreviewImage.setMinimumWidth(mToastBg.getIntrinsicWidth()); mPreviewImage.setMinimumHeight(mToastBg.getIntrinsicHeight()); mPreviewImage.setBackground(mToastBg); mPreviewImage.setAlpha(0f); final int textMinSize = Math.max(0, mToastBg.getIntrinsicHeight() - 0); mPrimaryText = createPreviewTextView(); mPrimaryText.setMinimumWidth(textMinSize); mPrimaryText.setMinimumHeight(textMinSize); mSecondaryText = createPreviewTextView(); mSecondaryText.setMinimumWidth(textMinSize); mSecondaryText.setMinimumHeight(textMinSize); setGravity(Gravity.CENTER); setPadding(0, mPaddingTopBottom, 0, mPaddingTopBottom); }
@Override public View onCreateView( LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mContentView = inflater.inflate(R.layout.fragment_read_reply, container, false); post = ParseObject.createWithoutData(Post.class, postId); post.fetchFromLocalDatastoreInBackground( new GetCallback<ParseObject>() { @Override public void done(ParseObject parseObject, ParseException e) { Log.e("", "post fetch from local done"); if (e == null) { refresh(""); if (adapter != null) { adapter.setPostId(post.getObjectId()); } else if (data != null) { adapter = new ReplyAdapter(getActivity(), data); adapter.setPostId(post.getObjectId()); } else { data = new ArrayList<>(); adapter = new ReplyAdapter(getActivity(), data); adapter.setPostId(post.getObjectId()); } } } }); data = new ArrayList<>(); adapter = new ReplyAdapter(getActivity(), data); holder = new ViewHolder(); holder.lv_replies = (ListView) mContentView.findViewById(R.id.replies); holder.lv_replies.setAdapter(adapter); setListViewHeightBasedOnChildren(holder.lv_replies); LinearLayout ll = new LinearLayout(getActivity()); LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER); lp.setMargins( 0, Util.convertDpToPixel(10, getActivity()), 0, Util.convertDpToPixel(10, getActivity())); ll.setLayoutParams(lp); ll.setOrientation(LinearLayout.HORIZONTAL); TextView tv = new TextView(getActivity()); tv.setLayoutParams( new LinearLayout.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)); tv.setMinimumHeight(Util.convertDpToPixel(120, getActivity())); tv.setHint(" There is no reply!"); tv.setGravity(Gravity.CENTER); ImageView imageView = new ImageView(getActivity()); LinearLayout.LayoutParams lp1 = new LinearLayout.LayoutParams( Util.convertDpToPixel(135, getActivity()), Util.convertDpToPixel(100, getActivity())); imageView.setLayoutParams(lp1); imageView.setBackgroundResource(R.drawable.empty_box); imageView.setAdjustViewBounds(true); ll.addView(imageView); ll.addView(tv); holder.empty_Overlay = (FrameLayout) mContentView.findViewById(R.id.empty_layout); holder.empty_Overlay.addView( ll, new FrameLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER)); holder.empty_Overlay.setVisibility(View.INVISIBLE); holder.lv_replies.setEmptyView(holder.empty_Overlay); // holder.lv_replies.setOnItemClickListener(new OnItemClickListener() { // // @Override // public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, // long arg3) { // // } // }); return mContentView; }