編輯:關於Android編程
private GridView gridView; private float density; private int listSize = 10; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); gridView = (GridView) findViewById(R.id.gridView1); gridView.setAdapter(new MyAdapter()); // 得到像素密度 DisplayMetrics outMetrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(outMetrics); density = outMetrics.density; // 像素密度 // 根據item的數目,動態設定gridview的寬度,現假定每個item的寬度和高度均為100dp,列間距為5dp ViewGroup.LayoutParams params = gridView.getLayoutParams(); int itemWidth = (int) (100 * density); int spacingWidth = (int) (5*density); params.width = itemWidth*listSize+(listSize-1)*spacingWidth; gridView.setStretchMode(GridView.NO_STRETCH); // 設置為禁止拉伸模式 gridView.setNumColumns(listSize); gridView.setHorizontalSpacing(spacingWidth); gridView.setColumnWidth(itemWidth); gridView.setLayoutParams(params); /* * 使用這種方式也有很大的弊端,由於動態指定了gridview的寬度,導致了gridview的所有item,getView()都會被調用, * 如果item很大時,就不能使用這種方式了~~~ */ gridView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { System.out.println(position); } }); }
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <HorizontalScrollView android:layout_width="fill_parent" android:layout_height="wrap_content" android:scrollbars="none" > <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" > <GridView android:id="@+id/gridView1" android:layout_width="wrap_content" android:layout_height="wrap_content" > </GridView> </LinearLayout> </HorizontalScrollView> </RelativeLayout>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/holo_green_light" android:gravity="center" android:orientation="vertical" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/main_item_ad" /> </LinearLayout>
工作需要,對這方面做了一些了解 一般的手寫對android canvas有點理解的應該都知道,只需要單純的使用drawPath就可以在view上畫畫。 
AndroidStudio 實現加載字體資源的方法在android中字體的格式總是不能盡善盡美的顯示出來 , 於是要求我們使用一些有美感的字體,加載的方式(就
項目MVP實現方式這節我們就具體來看官方示例到底是如何實現mvp的。這裡我們先看下總體的輪廓,關於項目中業務代碼我們僅列出了任務詳情頁(taskDetail)的相關類,其
Notification是在你的應用常規界面之外展示的消息。當app讓系統發送一個消息的時候,消息首先以圖表的形式顯示在通知欄。要查看消息的詳情需要進入通知抽屜(noti