2016-03-04 63 views
-4

我有一個報價應用程序有一個「加載更多」按鈕,只有當報價列表大小爲15時纔可見。現在我想更改條件,以便只有在報價列表大小超過15我當前的代碼是像下面,我試圖將其更改爲:小於或等於條件Android

if(c.getCount()<=15){ 
    // Not Showing Load More Button  
} 

,但它沒有顯示我的按鈕。

我該按鈕的代碼如下:

final Button btnLoadMore=new Button(this); 
      btnLoadMore.setBackgroundColor(Color.parseColor("#351802")); 
      btnLoadMore.setTextColor(Color.parseColor("#e8d8a7")); 
      btnLoadMore.setTypeface(btnLoadMore.getTypeface(), Typeface.BOLD); 
      btnLoadMore.setText("Load More Quotes"); 


      if(c.getCount()<15){ 
       // Not Showing Load More Button 

      } 

      else { 

      list.addFooterView(btnLoadMore);} 
      list.setAdapter(adapter); 
      anifadein=AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slidedown); 
      list.startAnimation(anifadein); 

      // Click event for single list row 
      list.setOnItemClickListener(new OnItemClickListener() { 

       @Override 
       public void onItemClick(AdapterView<?> parent, View view, 
         int position, long id) { 
        map = quotesList.get(position); 

        Intent intent = new Intent(QuotesActivity.this, 
          QuoteDialogActivity.class); 
        int itemPosition  = position; 
        if(startingPoint>=30){ 


         intent.putExtra("Pos", itemPosition+1); 
         intent.putExtra("LstCount", list.getCount()-1); 
        }else{ 
         intent.putExtra("Pos", itemPosition+1); 
         intent.putExtra("LstCount", list.getCount());} 
        intent.putExtra("QuoteId", map.get(KEY_ID)); 
        intent.putExtra("quotesType", quType); 
        intent.putExtra("startFrom", getIntent().getStringExtra("startFrom")); 
        intent.putExtra("Quotes", quotesList); 
      // Log.i("COUNT",""+(itemPosition+1)+"-"+list.getCount()); 
        intent.putExtra("Fav", map.get(KEY_FAVORITE)); 
        startActivity(intent); 
        if (mInterstitial.isLoaded()) { 
         mInterstitial.show(); 
        } 

       } 
      }); 

      btnLoadMore.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(View arg0) { 
         if(btnLoadMore.getVisibility()==View.VISIBLE){ 
         Cursor newC = null; 

         if (quType != 0) { 

          switch (quType) { 
          case 1: 


            newC = db.getQuotes(""+startingPoint); 


           break; 
          case 2: 
           newC = db.getFavoriteQuotes(""+startingPoint); 
           //page.setVisibility(View.GONE); 
           break; 
          case 3: 
           newC = db.getAuthorQuotes(getIntent().getStringExtra("AuthorId"),""+startingPoint); 
          // page.setVisibility(View.GONE); 
           break; 
          } 
         } 
         // Starting a new async task 
         if(newC.getCount()<15){ 
          btnLoadMore.setVisibility(View.INVISIBLE); 

         } 
         startingPoint+=15; 
         do{ 
          map = new HashMap<String, String>(); 

          // adding each child node to HashMap key =&gt; value 
          map.put(KEY_ID, newC.getString(newC.getColumnIndex(KEY_ID))); 
          map.put(KEY_TEXT, newC.getString(newC.getColumnIndex(KEY_TEXT))); 
          map.put(KEY_AUTHOR, newC.getString(newC.getColumnIndex(KEY_AUTHOR))); 
          map.put(KEY_PICTURE, newC.getString(newC.getColumnIndex(KEY_PICTURE))); 
          map.put(KEY_PICTURE_SDCARD, String.valueOf(newC.getInt(newC 
            .getColumnIndex(KEY_PICTURE_SDCARD)))); 
          map.put(KEY_WEB_ID, 
            String.valueOf(newC.getInt(newC.getColumnIndex(KEY_WEB_ID)))); 
          //Log.i("web_id",String.valueOf(newC.getInt(newC.getColumnIndex(KEY_ID)))); 
          map.put(KEY_FAVORITE, newC.getString(newC.getColumnIndex(KEY_FAVORITE))); 

          // adding HashList to ArrayList 
          quotesList.add(map); 
          if (mInterstitial.isLoaded()) { 
           mInterstitial.show(); 
          } 

         } while (newC.moveToNext()); 
         adapter.notifyDataSetChanged(); }} 
       }); 
     } 
    } 

回答

1

我是從哪裏對象「​​C」來了肯定,但我爲假定它的列表對象和getCount將是返回列表的當前計數。所以,如果您想在列表大小大於或等於15時顯示「顯示更多」按鈕,請使用此條件。

if(c.getCount() >= 15){ 
    // Will show Load More Button  
} 
0

將按鈕放在佈局XML文件中。膨脹它,然後:

if (c.getCount() > 15) { 
    btnLoadMore.setVisibility(View.INVISIBLE); 
} 

如果你想Button是不可見的。