
		loadMoreListFooter.loading();
		onLoadMoreListener.onLoadMore(this);
	}
	
	/**
	 * 加载完成
	 */
	public void loadFinished(boolean end){
		if(end){
			if(debugMode){
				Log.i(NAME, "loadFinished：已加载完毕");
			}
			return;
		}
		if(!loading){
			if(debugMode){
				Log.i(NAME, "loadFinished：尚未加载");
			}
			return;
		}

		
		if(end){
			if(debugMode){
				Log.w(NAME, "loadFinished：已全部加载完毕");
			}
			end = true;
			loading = false;
			allowClickLoad = false;
			loadMoreListFooter.end();
		}else{
			if(debugMode){
				Log.w(NAME, "loadFinished：加载完成");
			}
			loading = false;
			allowClickLoad = true;
			loadMoreListFooter.clickLoad();
		}
	}
	
	/**
	 * 加载失败
	 */
	public void loadFailed(){
		if(end){
			if(debugMode){
				Log.i(NAME, "loadFailed：已加载完毕");
			}
			return;
		}
		if(!loading){
			if(debugMode){
				Log.i(NAME, "loadFailed：尚未加载");
			}
			return;
		}

		if(debugMode){
			Log.e(NAME, "loadFailed：加载失败");
		}
		loading = false;
		allowClickLoad = true;
		loadMoreListFooter.failed();
	}
	
	/**
	 * 设置滚动监听器
	 * @param onScrollListener
	 */
	public void setOnScrollListener(OnScrollListener onScrollListener) {
		this.onScrollListener = onScrollListener;
		listView.setOnScrollListener(this);
	}

	/**
	 * 设置DEBUG模式
	 * @param debugMode
	 */
	public void setDebugMode(boolean debugMode) {
		this.debugMode = debugMode;
	}

	/**
	 * 设置加载更多监听器
	 * @param onLoadMoreListener
	 */
	public void setOnLoadMoreListener(OnLoadMoreListener onLoadMoreListener) {
		this.onLoadMoreListener = onLoadMoreListener;
	}

	/**
	 * 设置是否滚动到底部自动加载，默认true
	 * @param scrollToBottomAutoLoad
	 */
	public void setScrollToBottomAutoLoad(boolean scrollToBottomAutoLoad) {
		this.scrollToBottomAutoLoad = scrollToBottomAutoLoad;
	}

	/**
	 * 加载更多监听器
	 */
	public interface OnLoadMoreListener{
		/**
		 * 加载更多
		 * @param loadMore
		 */
		public void onLoadMore(ListViewLoadMoreManager loadMore);
	}
	
	/**
	 * 加载更多列表尾接口
	 */
	public interface LoadMoreListFooter{
		/**
		 * 点击加载
		 */
		public void clickLoad();
		
		/**
		 * 加载中
		 */
		public void loading();
		
		/**
		 * 加载失败
		 */
		public void failed();
		
		/**
		 * 已全部加载完毕
		 */
		public void end();
	}
	
	/**
	 * 默认的加载更多列表尾视图
	 */
	public static class DefaultLoadMoreListFooterView extends LinearLayout implements LoadMoreListFooter{
		private ProgressBar progressBar;
		private TextView textView;
		
		public DefaultLoadMoreListFooterView(Context context, int textColor) {
			super(context);
			setGravity(Gravity.CENTER);
			setLayoutParams(new AbsListView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, dp2px(getContext(), 50)));
			
			int progressWidth = dp2px(getContext(), 30);
			progressBar = new ProgressBar(getContext());
			addView(progressBar, new LayoutParams(progressWidth, progressWidth));
			
			textView = new TextView(getContext());
			if(textColor > 0){
				textView.setTextColor(textColor);
			}
			LayoutParams textViewParams = new LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
			textViewParams.leftMargin = dp2px(getContext(), 8);
			addView(textView, textViewParams);
		}
		
		/**
		 * dp单位转换为px
		 * @param context 上下文，需要通过上下文获取到当前屏幕的像素密度
		 * @param dpValue dp值
		 * @return px值
		 */
		private int dp2px(Context context, float dpValue){
			return (int)(dpValue * (context.getResources().getDisplayMetrics().density) + 0.5f);
		}

		@Override
		public void loading() {
			progressBar.setVisibility(View.VISIBLE);
			textView.setText("正在加载更多，请稍后…");
		}

		@Override
		public void failed() {
			progressBar.setVisibility(View.GONE);
			textView.setText("加载更多失败，点击重新加载");
		}

		@Override
		public void end() {
			progressBar.setVisibility(View.GONE);
			textView.setText("THE END");
		}

		@Override
		public void clickLoad() {
			progressBar.setVisibility(View.GONE);
			textView.setText("点击加载更多");
		}
	}
}
Support to Prostate patients and their families with meetings on first Friday of each month from 10.30am to 12.30pm in the Boardroom, St Margaret’s Hospital, The Plain, Epping, Essex, CM16 6TN.
Services provided include: Monthly speakers, Buddying Scheme, existing members who have had/are having treatments, will be pleased to talk to you regarding their own experiences.
In the alley on Hoang Dieu Street in Da Nang, the chef consecutively makes the pancakes in nearly a dozen of pans, but still not enough for customers sitting full of the restaurant.
>>6 quality Saigon restaurants for you to choose for your next holiday
Banh Xeo Ba Duong – a famous restaurant for more than 30 years in Da Nang
Banh xeo (Vietnamese crepe cake) is Vietnamese savory fried pancakes made of rice flour, water, and turmeric powder, stuffed with slivers of fatty pork, shrimp, diced green onion, and bean sprouts. This is one of popular Vietnamese Dish recipes
Banh Xeo (Vietnamese crepe cake), which is one of delicious Vietnamese Dish,bean and sticky rice sauce, ground pork liver, ground and toasted peanut and seasonings.
Banh Xeo (Vietnamese crepe cake) must use with Vietnamese dipping fish sauce (nuoc cham), and assemble the lettuce, herbs, fish sauce, in bowls or on plates. Decorating with the fresh herbs, wrap it all in lettuce, dip and enjoy.
For long time, Banh Xeo Ba Duong (Mrs Duong’s pancakes) has become a “brand name” for customers when traveling to Da Nang. Although each dish of Banh Xeo costs up to 55,000 VND which is higher than other places, the restauarnt is still crowded. Yellow pancakes can be served with vegetables, sour green papaya and cucumber. For 30 years, the restaurant of Mrs. Duong Family has still remained delicious and rustic taste of the Central region.
The owner is Mrs. Truong Thi Lai, 77 years old. She opened this shop more than 30 years ago. She said, the main ingredient used to make the cake is a special kind of rice in Quang Nam province called “Gao Xiec”. The rice is added a little turmeric powder to have eye-catching color and soaked for four hours to be soft and smooth. When being fried on the stove, the piece of cake will be plastic and crunchy.
The attraction of Banh Xeo Ba Duong
To have delicious pancakes, the chef has to use high temperature to warm up the pan, and then put the ingredients including the bean sprouts, beef and shrimp inside. Until the cake is well