package demo01.com.bawei.xlistview.refresh;
import android.app.Application;
import android.os.Environment;
import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import java.io.File;
public class MyApplication extends Application{
@Override
public void onCreate() {
}
/**
* 配置图片是否缓存
*/
public static DisplayImageOptions getDisplayImageOption(){
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageForEmptyUri(R.mipmap.ic_empty)
.showImageOnFail(R.mipmap.ic_error)
.cacheInMemory(true)
.cacheOnDisk(true)
.build();
return options;
}
import android.app.Application;
import android.os.Environment;
import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import java.io.File;
public class MyApplication extends Application{
@Override
public void onCreate() {
String path = Environment.getExternalStorageDirectory()+"/123"; File cacheDir = new File(path); //没有网的情况,首先回去内存找图片, 如果内存不存在次张图片的话,去sdcard,->去网络加载 ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this) //配置线程的优先级,图片加载为首 .threadPriority(100) //指定由多个线程去加载图片 .threadPoolSize(5) //指定要缓存多大尺寸的图片(内存缓存) .memoryCacheExtraOptions(200,200) //配置sdcard缓存路径 .diskCache(new UnlimitedDiskCache(cacheDir)) //指定图片的名字,根据MD5算出来的一个串号(串号不会重名) .diskCacheFileNameGenerator(new Md5FileNameGenerator()) //指明图片在内存占用多大空间(APP默认空间1/8) .memoryCacheSize(2 * 1024 * 1024) //指定图片在sdcard缓存多大(指的是占用空间) .diskCacheSize(50 * 1024 * 1024) .build(); ImageLoader.getInstance().init(config);
}
/**
* 配置图片是否缓存
*/
public static DisplayImageOptions getDisplayImageOption(){
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageForEmptyUri(R.mipmap.ic_empty)
.showImageOnFail(R.mipmap.ic_error)
.showImageOnLoading(R.mipmap.loading)
//这是设置圆形头像 .displayer(new CircleBitmapDisplayer())
.cacheInMemory(true)
.cacheOnDisk(true)
.build();
return options;
}
}
//Window
package demo01.com.bawei.popwindow; import android.graphics.drawable.ColorDrawable; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.PopupWindow; import android.widget.TextView; public class MainActivity extends AppCompatActivity { private TextView mMenuTv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mMenuTv = (TextView) findViewById(R.id.menu); mMenuTv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showPopWindow(); } }); } private void showPopWindow(){ View view = View.inflate(this, R.layout.item, null); PopupWindow window = new PopupWindow(view,100,100); //下面这代码就是点击外面可以退出pop 两个缺一不可 window.setBackgroundDrawable(new ColorDrawable()); window.setOutsideTouchable(true); TextView tv1 = (TextView) view.findViewById(R.id.pop_computer); TextView tv2 = (TextView) view.findViewById(R.id.pop_financial); TextView tv3 = (TextView) view.findViewById(R.id.pop_manage); window.showAsDropDown(mMenuTv); } }//popupwindow的布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:orientation="vertical" android:gravity="center_horizontal" android:background="#ff00" android:layout_height="match_parent"> <TextView android:id="@+id/pop_computer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="计算机"/> <View android:layout_width="match_parent" android:layout_height="1dp" android:background="#000000" /> <TextView android:id="@+id/pop_financial" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="金融"/> <View android:layout_width="match_parent" android:background="#000000" android:layout_height="1dp" /> <TextView android:id="@+id/pop_manage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="管理"/> <View android:layout_width="match_parent" android:background="#000000" android:layout_height="1dp"/> </LinearLayout>//activity中布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="demo01.com.bawei.popwindow.MainActivity"> <TextView android:id="@+id/menu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#50484b" android:padding="10dp" android:text="菜单"/> </LinearLayout>