-
設置完全自定義的Toast查看全部
-
帶有圖片的Toast查看全部
-
常用方法查看全部
-
通過xml布局實現子菜單 在menu文件夾下創建菜單布局main.xml: <item android:showAsAction="never" android:title="文件"> <menu> <item android:id="@+id/new_file" android:showAsAction="never" android:title="新建"/> <item android:id="@+id/open_file" android:showAsAction="never" android:title="打開"/> <item android:id="@+id/save_file" android:showAsAction="never" android:title="保存"/> </menu> </item> <item android:showAsAction="never" android:title="編輯"> <menu> <item android:id="@+id/copy_edit" android:showAsAction="never" android:title="復制"/> <item android:id="@+id/paste_edit" android:showAsAction="never" android:title="粘貼"/> <item 依此類推.../> </menu> </item> 在 MainActivity中重寫onCreateOptionsMenu(): MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main,menu); 最后重寫點擊之后的響應事件onOptionsItemSelected()查看全部
-
更改activity的樣式達到顯示不同SubMenu菜單查看全部
-
動態添加SubMenu子菜單: 動態添加SubMenu子菜單 1.添加內容 onCreateOptionsMenu(Menu menu){ SubMenu file=menu.addSubMenu("文件"); SubMenu edit=menu.addSubMenu("編輯"); file.add(); file.setxxx() edit.add()' } 2.監聽子菜單點擊事件 onOptionItemSelected(MenuItem item){ if(item.getGroupId()==1){ switch(item.getItemId){} }else if(item.getGroupId()==1){} }查看全部
-
子菜單的實現 重寫onCreateOptionsMenu(): SubMenu file = menu.addSubMenu("文件"); SubMenu edit = menu.addSubMenu("編輯"); // 方法add(int groupId,int itemId,int order,charSequence title) // 使用 GroupId 為菜單項分組,“1”屬于文件組,“2”屬于編輯組 file.add(1,1,1,"新建"); file.add(1,2,1,"打開"); file.add(1,3,1,"保存"); file.setHeaderTitle("文件操作"); file.setHeaderIcon(R.mipmap.ic_launcher); edit.add(2,1,1,"復制"); edit.add(2,2,1,"粘貼"); edit.add(2,3,1,"剪切"); edit.setHeaderTitle("編輯操作"); edit.setHeaderIcon(R.mipmap.ic_launcher); return super.onCreateOptionsMenu(menu); 重寫onOptionsItemSelected() if (item.getGroupId()==1){ // 先判斷 GroupId switch (item.getItemId()){ case 1: Toast.makeText(this, "點擊新建", Toast.LENGTH_SHORT).show(); break; case 2: Toast.makeText(this, "點擊打開", Toast.LENGTH_SHORT).show(); break; case 3: Toast.makeText(this, "點擊保存", Toast.LENGTH_SHORT).show(); break; } }else if(item.getGroupId()==2){ switch (item.getItemId()){ case 1:Toast查看全部
-
設置ListView的顯示內容,需要設置適配器 showListView(){ ListView listView=(ListView)findViewById(R.id.listView); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,getData()); listView.setAdapter(adapter); //給listView設置上下文菜單,首先需要注冊菜單,然后重寫onCreateContextMenu() this.registerForContextMenu(listView); } onCreateContextMenu(){ //設置Menu顯示的內容 menu.setHeaderTitle("文件操作"); menu.setHeaderIcon(R.mipmap.ic_launcher); //方法一,代碼添加 menu.add(1,1,1,"復制"); menu.add(1,2,1,"粘貼"); menu.add(1,3,1,"剪切"); menu.add(1,4,1,"重命名"); //方法二,通過xml添加 MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.context_menu,menu); } 點擊的響應事件: onContextItemSelected() switch (item.getItemId()){ case 1: Toast.makeText(this, "點擊復制", Toast.LENGTH_SHORT).show(); break; case 2: Toast.makeText(this, "點擊粘貼", Toast.LENGTH_SHORT).show(); break; case 3: Toast.makeText(this, "點擊剪切", Toast.LENGTH_SHORT).show(); break; case 4: Toast.makeText(this, "點擊重命名", Toast.LENGTH_SHORT).show(); break; }查看全部
-
ContextMenu用法總結。 1.為listView注冊上下文菜單。使用Acvitity提供的registerForContextMenu方法。 2.重寫Activity的onCreateContextMenu方法。 3.使用動態或者xml方式增添菜單項 4.重寫Actvitity的onContextItemSelected方法,用于處理點擊事件。 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); menu.add(1, 101, 1, "菜單一");//動態增添,4個參數,分別是"組id","itemId"(用來識別點的是哪一個),"排序",“文字” menu.add(1, 102, 1, "菜單二"); } @Override public boolean onContextItemSelected(MenuItem item) { AdapterView.AdapterContextMenuInfo acm = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo(); int item_id = (int) acm.id; //可以通過這個方法。獲取ListView的ItemId switch (item.getItemId()) { case 101: Toast.makeText(this, item_id +"菜單一", Toast.LENGTH_SHORT).show(); break; case 102: Toast.makeText(this, item_id +"菜單二", Toast.LENGTH_SHORT).show(); break; } return super.onContextItemSelected(item); }查看全部
-
ContextMenu與OptionMenu的區別 1. OptionMenu對應的是activity,一個activity只能擁有一個選項菜單; 2. ContextMenu對應的是View,每一個View都可以設置上下文菜單; 一般情況下ContextMenu常用于ListView或者GridView 創建ContextMenu方法 1.添加上下文菜單內容onCreateContextMenu() 可以通過代碼動態添加 可以加載xml問價中的菜單項 2.設置菜單點擊后的響應事件 ContextMenu創建方法 首先給View 注冊上下文菜單registerForContextMenu() 添加上下文菜單內容 onCreateContextMenu() -- 可以通過代碼動態添加; -- 可以加載xml文件中的菜單項。 設置菜單點擊后的響應事件 onContextItemSelected()查看全部
-
第一步:在Activity中重寫onCreateOptionsMenu()來創建選項菜單,在中包含了getMenuInflater().inflate(R.menu.main,menu),R.menu.main是res的menu文件夾下的xml文件是放菜單的文件夾;設置菜單項可以通過兩種方法: 一:代碼動態設置menu.add(groupId,itemId,order,title), groupId--1:分組的id; itemId--100:菜單項的id; order--1:菜單項排序用的; title--"菜單1":菜單名稱; 類似于ArrayList,可以調用add方法來加載如 menu.add(1,100,1,"菜單一"); menu.add(1,101,1,"菜單二"); menu.add(1,102,1,"菜單三"); menu.add()方法返回的是 MenuItem 對象,可以通過該對象設置更多樣式。 add方法返回的是item,可以賦值給item,再調用item的setTitle與setIcon(在API>=11時,是不顯示圖標的)來設置item; 二:在R.menu.main的xml文件,添加item控件來添加設置菜單項; 第二步:重寫onOptionsItemSelected(MenuItem item)方法設置菜單項的點擊事件,再switch(item.getItemId())來設置各個case,方法1的id是add中itemId,方法二的id是xml文件中定義的id的點擊事件; 第三步:創建Activity,關聯xml文件,并在manifest中加上activity。在case中,新建intent,調用item的setIntent(intent)實現界面跳轉; 新建activity時需要再mainfast中配置查看全部
-
重寫onOptionsItemSelected() public boolean onOptionsItemSelected(MenuItem item){ switch(item.getItemId()){ case R.id.action_menu_item1: Toast.makeText(MainActivity.this, "點擊了菜單一", Toast.LENGTH_SHORT); break; case R.id.action_menu_item2: Toast.makeText(MainActivity.this, "點擊了菜單二", Toast.LENGTH_SHORT); break; } }查看全部
-
1. 創建選項菜單 重寫onCreateOptionsMenu()方法 2. 在onCreateOptionsMenu()方法中構建菜單的菜單項 (1)通過代碼動態添加menuadd() (2)通過xml設置MenuInflater.inflate() getMenuInflater().inflate(R.menu.main, menu); 3. 設置菜單項點擊事件:重寫onOptionsItemSelected() switch(item.getItemId()) {} 4. 動態菜單項 (1)創建菜單項 menu.add(groupId, itemId, order, title); groupId是組id,itemId是菜單項id,order是菜單項排序,title為菜單項描述 menu.add(1, 100, 1, "menu 1"); (2)設置監聽 通過getItemId()來獲取是哪個菜單項被點擊了。 switch(item.getItemId()) { case 100: …… } 5. 另外一種方法 因為menu.add()返回的是MenuItem對象,所以可以用 MenuItem item = menu.add(1, 100, 1, "menu 1"); item.setTitle("菜單");查看全部
-
使用 NotificationManager 顯示或取消通知 1. 設置全局變量 NotificationManager manager; // 通知管理類 int notification_ID; // 通知的ID號 2. 在 onCreate()方法中初始化 manager: manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 注意:NotificationManager的初始化:因為NotificationManager是系統服務,所以需要通過getSystemService()來獲取實例。 3. 調用方法(分別在不同的點擊事件中調用) manager.notify(notification_ID,notification); //顯示通知,其中notification是我們上節課構造好的通知。 manager.cancel(notification_ID); // 取消通知查看全部
-
通知欄的實現 需要在配置文件中添加權限: <uses-permission android:name="android.permission.FLASHLIGHT" /> <uses-permission android:name="android.permission.VIBRATE" /> ------------ Intent intent = new Intent(this,ThirdActivity.class); Notification.Builder builder = new Notification.Builder(this); builder.setSmallIcon(R.mipmap.ic_launcher); // 設置圖標 builder.setTicker("Hello!"); // 設置手機狀態欄的一行文字提示 builder.setWhen(System.currentTimeMillis()); // 設置時間 builder.setContentTitle("通知欄通知"); builder.setContentText("我來自Notification的小練習"); // 點擊通知之后想要跳轉到某個頁面,需要 PendingIntent 和 Intent(意圖)來實現 PendingIntent pendingIntent = PendingIntent.getActivity(this,0,intent,0); // 請求碼和flag都設置為0 builder.setContentIntent(pendingIntent); // 點擊后的意圖 builder.setDefaults(Notification.DEFAULT_ALL); //設置所有的提示效果,包括聲音、振動、指示燈 Notification notification = builder.build(); // 4.1以上版本(包括4.1) // Notification notification1 = builder.getNotification(); // 4.1以下版本查看全部
舉報
0/150
提交
取消