版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
主講人:溫春水按鈕相關(guān)組件3日期/時(shí)間相關(guān)組件列表組件4進(jìn)度條組件課程目錄1256文本相關(guān)組件其他重要組件主要內(nèi)容:掌握常用的Android圖形界面組件的創(chuàng)建方式、特征等,包括文本組件、按鈕組件、列表組件等掌握常用組件的事件處理步驟組件的常用屬性以及事件處理ListView、GridView等視圖容器組件的使用TextView往往用來(lái)向用戶(hù)顯示文本,如郵件正文或應(yīng)用程序標(biāo)簽等。API中對(duì)應(yīng)android.widget.TextView類(lèi)<TextViewandroid:background="#FF00FF“android:layout_gravity="center“android:layout_height="wrap_content"android:layout_margin="60dp"android:layout_width="fill_parent“android:padding="40dp"android:text="@string/hello"android:textColor="#0000FF"/>文本的顏色和背景android:textColor=“#0000FF”android:background=“#0000FF”TextView的對(duì)齊方式android:layout_gravity=“center”字體大小android:textSize=“20px”單行顯示android:singleLine=“true”android:gravity用于設(shè)置View中內(nèi)容相對(duì)于View組件的對(duì)齊方式
android:layout_gravity用于設(shè)置View組件相對(duì)于Container的對(duì)齊方式LinearLayout中有android:layout_gravityRelativelayout中沒(méi)有android:layout_gravityEditText是TextView類(lèi)的子類(lèi),具有TextView所有屬性EditText可以編輯文本EditText可以指定文本的類(lèi)型,通過(guò)三種屬性可以指定android:digitsandroid:inputTypeandroid:numeric<EditTextandroid:background="#FFFFFF"android:digits="
XxYy“android:layout_height="wrap_content“android:layout_margin="10dp"android:layout_width="200dp"android:textColor="#000000"/>Button類(lèi)繼承了TextView類(lèi)在布局文件中,使用屬性指定Button的屬性,如android:text指定Button顯示的文本<Button
android:id="@+id/button1"android:layout_height="wrap_content"android:layout_width="wrap_content"android:text="普通按鈕"/>如何做出漂亮的按鈕?android:background="@drawable/ic_launcher"Button經(jīng)常使用OnClickListener監(jiān)聽(tīng)點(diǎn)擊事件使用Button類(lèi)的setOnClickListener方法注冊(cè)監(jiān)聽(tīng)器Button
button1=(Button)
this.findViewById(R.id.button1);button1.setOnClickListener(new
OnClickListener(){public
void
onClick(View
arg0)
{//
TODO
Auto-generated
method
stubTextView
view=(TextView)
findViewById(R.id.text);view.setText("您點(diǎn)擊了普通按鈕");}});ImageButton是只顯示圖像的按鈕,是ImageView的子類(lèi)<ImageButtonandroid:layout_height="wrap_content"android:layout_width="wrap_content"android:src="@drawable/icon"/>如果按鈕既需要顯示圖像又顯示文字,則使用<button>配置<Button
android:drawablePadding="20dp"android:drawableRight="@drawable/icon"android:layout_height="wrap_content"android:layout_width="wrap_content"android:text="拍照"/>RadioButton可以構(gòu)建一組單選按鈕一組互斥的單選按鈕必須在一個(gè)RadioGroup中<RadioGroup
android:layout_height="wrap_content"android:layout_width="wrap_content"><RadioButtonandroid:layout_height="wrap_content"android:layout_width="wrap_content"android:text="iPhone"/><RadioButtonandroid:layout_height="wrap_content"android:layout_width="wrap_content"android:text="Android"/><RadioButtonandroid:layout_height="wrap_content"android:layout_width="wrap_content"android:text="Phone"/></RadioGroup><RadioGroupandroid:id="@+id/gender"android:layout_width="wrap_content"android:orientation="horizontal"android:layout_height="wrap_content"
><RadioButtonandroid:id="@+id/radioButton1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:checked="true"android:text="Female"
/><RadioButtonandroid:id="@+id/radioButton2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Male"
/></RadioGroup>CheckBox多用于多選應(yīng)用<CheckBox
android:id="@+id/checkbox1"android:layout_height="wrap_content"android:layout_width="fill_parent"android:text="1、我喜歡閱讀"/><CheckBox
android:id="@+id/checkbox2"android:layout_height="wrap_content"android:layout_width="fill_parent"android:text="2、我喜歡旅游"/><CheckBox
android:id="@+id/checkbox3"android:layout_height="wrap_content"android:layout_width="fill_parent"android:text="3、我喜歡烘焙"/>RadioGroup
rg
=
(RadioGroup)
this.findViewById(R.id.gender);rg.getCheckedRadioButtonId();CheckBox
cb
=(CheckBox)this.findViewById(R.id.checkBox1);cb.isChecked();<View
android:layout_height="10px"android:layout_width="match_parent"android:background="#000fff”/>ToggleButton與Button的功能基本相同ToggleButton多了一個(gè)表示“開(kāi)/關(guān)”狀態(tài)的指示條<ToggleButton
android:id="@+id/toggleButton"android:layout_height="wrap_content"android:layout_marginLeft="30dp"android:layout_width="wrap_content"android:textOff="打開(kāi)照相機(jī)"android:textOn="關(guān)閉照相機(jī)"/>res--創(chuàng)建drawable文件夾--創(chuàng)建switch_btn.xml資源文件--作以下配置<?xml
version="1.0"
encoding="utf-8"?><selectorxmlns:android="
"><item
android:state_checked="true"
android:drawable="@drawable/ios7_switch_on"
/><item
android:drawable="@drawable/ios7_switch_off"
/></selector>其中:android:state_checked="true"表示選中on時(shí)候的,效果為:android:drawable="@drawable/ios7_switch_on"反之就是未選中off情況下的效果:android:drawable="@drawable/ios7_switch_off"之后在布局文件中寫(xiě)控件:<ToggleButtonandroid:id="@+id/mTogBtn"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center_horizontal"android:background="@android:color/transparent"android:button="@drawable/toggle_btn"android:checked="false"android:text=""android:textOff=""android:textOn=""
/>android:textOn=""
表示:選中情況下顯示的文本android:textOff=""
表示:未選中情況下顯示的文本android:checked="false"
表示:初始化時(shí)候,默認(rèn)是未選中的android:button="@drawable/toggle_btn"
表示:button樣式android:background=“@android:color/transparent”
表示:背景,這里不用它的默認(rèn)背景,所以設(shè)置為透明之后在主程序中實(shí)例化,并設(shè)置checked點(diǎn)擊監(jiān)聽(tīng)ToggleButton
mTogBtn
=
(ToggleButton)
findViewById(R.id.mTogBtn);//獲取到控件mTogBtn.setOnCheckedChangeListener(new
OnCheckedChangeListener()
{public
void
onCheckedChanged(CompoundButton
buttonView,boolean
isChecked)
{if(isChecked){//選中}else{//未選中}}});//添加監(jiān)聽(tīng)事件參考:SwitchButtonAndroidDatePicker組件可以輸入日期。范圍是1900-1-1~2100-12-31TimePicker組件可以輸入時(shí)間,只能輸入小時(shí)和分鐘,默認(rèn)情況是12小時(shí)制對(duì)應(yīng)的監(jiān)聽(tīng)器分別是OnDateChangedListener和OnTimeChangedListenerAnalogClock用表盤(pán)方式顯示當(dāng)前時(shí)間,有時(shí)針和分針兩個(gè)指針DigitalClock用數(shù)字方式顯示當(dāng)前時(shí)間,可以顯示時(shí)、分、秒。<AnalogClock
android:layout_height="wrap_content"android:layout_width="fill_parent"/><DigitalClock
android:layout_height="wrap_content"android:layout_width="wrap_content"android:textSize="18dp"/>參考:example/DateTimeAndroidProgressBar用來(lái)顯示任務(wù)或工作的完成率Android系統(tǒng)中可以實(shí)現(xiàn)圓形或者水平的進(jìn)度條ProgressBar類(lèi)中有setProgress和getProgress方法用來(lái)設(shè)置及獲取當(dāng)前進(jìn)度ProgressBar類(lèi)中有setSecondaryProgress和getSecondaryProgress方法用來(lái)設(shè)置及獲取二級(jí)進(jìn)度SeekBar是ProgressBar的子類(lèi),使用方式和
ProgressBar類(lèi)似拖動(dòng)條滑動(dòng)的相關(guān)事件接口是OnSeekBarChangerListener,該接口中三個(gè)方法onProgressChanged:滑動(dòng)滑桿onStartTrackingTouch:按住滑桿onStopTrackingTouch:松開(kāi)滑桿RatingBar組件用來(lái)實(shí)現(xiàn)評(píng)分功能RatingBar常用的布局屬性android:numStars:用于評(píng)分的五角星個(gè)數(shù)android:rating:指定當(dāng)前的分?jǐn)?shù)android:stepSize:指定分?jǐn)?shù)的增量單位style:設(shè)置RatingBar的風(fēng)格<RatingBar
android:id="@+id/ratingbar2"style="?android:attr/ratingBarStyleSmall"android:layout_height="wrap_content"android:layout_width="wrap_content"android:numStars="5"
android:rating="2"android:stepSize="0.5"/>RatingBar
rb
=(RatingBar)this.findViewById(R.id.ratingbar2);System.out.println("===========rating====="+rb.getRating());rb.setRating(3);參考:ProgressbarAndSeekBarAndRatingBarAndroidImageView用來(lái)在屏幕上顯示圖片使用android:src屬性設(shè)置TextView的圖片源?;蛘哒{(diào)用ImageView類(lèi)的setImageResource(intresId)方法可以為ImageView設(shè)置顯示的圖片<ImageViewandroid:src="@drawable/moon"android:adjustViewBounds="true"android:layout_width="wrap_content"android:layout_height="wrap_content"
/>Spinner的功能和ListView組件類(lèi)似Spinner的數(shù)據(jù)也是通過(guò)Adapter裝載,使用數(shù)組或者List對(duì)象放值:String
str[]={“Data”,“英語(yǔ)”,“Java”,“數(shù)學(xué)"};s
=
(Spinner)
this.findViewById(R.id.spinner1);s.setAdapter(newArrayAdapter(this,android.R.layout.simple_spinner_item,str));取值:String
str
=
s.getSelectedItem().toString();TabHost是一個(gè)裝載選項(xiàng)卡窗口的容器,實(shí)現(xiàn)分模塊顯示的效果。類(lèi)似新浪微博客戶(hù)端、微信客戶(hù)端。繼承TabActivity類(lèi)在A(yíng)ctivity中通過(guò)getTabHost()方法取得TabHost.public
class
MainActivity
extends
TabActivity
{
@Overridepublic
void
onCreate(Bundle
savedInstanceState)
{super.onCreate(savedInstanceState);//獲取TabHost組件TabHost
tabHost
=
getTabHost();//新建一個(gè)標(biāo)簽頁(yè)TabSpec
tabSpec1
=
(TabSpec)tabHost.newTabSpec("Home").setIndicator("Home“);//給標(biāo)簽頁(yè)設(shè)置內(nèi)容tabSpec1.setContent(new
Intent(MainActivity.this,HomeActivity.class));//把標(biāo)簽頁(yè)添加到TabHost當(dāng)中去
tabHost.addTab(tabSpec1);TabSpec
tabSpec2
=(TabSpec)tabHost.newTabSpec("COMMENT").setIndicator("COMMENT");tabSpec2.setContent(new
Intent(MainActivity.this,CommentActivity.class));tabHost.addTab(tabSpec2);}}Android中的五種對(duì)話(huà)框AlertDialogCharacterPickerDialogDatePickerDialogTimePickerDialogProgressDialogAlertDialog類(lèi)繼承了Dialog類(lèi)是其他對(duì)話(huà)框類(lèi)的父類(lèi)AlertDialog類(lèi)有一個(gè)重要的內(nèi)嵌類(lèi)-BuilderAlertDialog類(lèi)的常用方法Dialogdialog
=
new
AlertDialog.Builder(MainActivity.this).setTitle("Title").setMessage("Message").setPositiveButton(("確定"),new
DialogInterface.OnClickListener(){@Overridepublic
void
onClick(DialogInterface
dialog,int
which)
{System.out.println("====");}}).setNegativeButton(("取消"),new
DialogInterface.OnClickListener(){@Overridepublic
void
onClick(DialogInterface
dialog,int
which)
{//...}}).create();dialog.show();使用AlertDialog可以創(chuàng)建出各種對(duì)話(huà)框如果要完全定制自己的對(duì)話(huà)框,可以自定義對(duì)話(huà)框AlertDialog.Builder類(lèi)的setView方法new
AlertDialog.Builder(this).setView(布局文件).show()AlertDialog.Builder
builder
=
new
AlertDialog.Builder(MainDialog.this);LayoutInflater
factory
=
LayoutInflater.from(this);final
View
textEntryView
=
factory.inflate(R.layout.test,
null);builder.setIcon(R.drawable.icon);builder.setTitle("自定義輸入框");builder.setView(textEntryView);LayoutInflater:
在實(shí)際開(kāi)發(fā)中LayoutInflater這個(gè)類(lèi)還是非常有用的,它的作用類(lèi)似于
findViewById()。不同點(diǎn)是LayoutInflater是用來(lái)找res/layout/下的xml布局文件,并且實(shí)例化;而findViewById()是找xml布局文件下的具體widget控件(如Button、TextView等)。builder.setPositiveButton("確定",new
DialogInterface.OnClickListener(){
public
void
onClick(DialogInterface
dialog,
int
whichButton){EditText
userName
=
(EditText)textEntryView.findViewById(R.id.etUserName);EditTextpassword=(EditText)textEntryView.findViewById(R.id.etPassWord);}});builder.setNegativeButton("取消",new
DialogInterface.OnClickListener(){
public
void
onClick(DialogInterface
dialog,
int
whichButton){}});builder.create().show();取消按鈕setNegativeButton
(CharSequence
text,
DialogInterface.OnClickListener
listener)setNegativeButton
(int
textId,
DialogInterface.OnClickListener
listener)確認(rèn)按鈕setPositiveButton
(CharSequence
text,
DialogInterface.OnClickListener
listener)setPositiveButton
(int
textId,
DialogInterface.OnClickListener
listener)覆蓋按鈕setNeutralButton
(int
textId,
DialogInterface.OnClickListener
listener)setNeutralButton
(CharSequence
text,
DialogInterface.OnClickListenerlistener)選項(xiàng)菜單通過(guò)硬件調(diào)用的菜單情景菜單通過(guò)上下文調(diào)用的菜單MenuubMenuSContextMenuMenuItemActivity類(lèi)的onCreateOptionsMenu方法用來(lái)創(chuàng)建選項(xiàng)菜單通過(guò)硬件調(diào)用的菜單通過(guò)手機(jī)上的菜單鍵進(jìn)行調(diào)用public
class
MenuActivity
extends
Activity
{@Overridepublic
boolean
onCreateOptionsMenu(Menu
menu)
{MenuItem
mItem1=menu.add(1,1,1,"設(shè)置");
MenuItem
mItem2=menu.add(1,2,2,"資料");
MenuItem
mItem3=menu.add(1,2,3,"信息");
return
true;}getMenuInflater().inflate(R.menu.main,
menu);<menu
xmlns:android=""
><item android:id="@+id/menu_settings" android:orderInCategory="1" android:title="設(shè)置"/><itemandroid:id="@+id/menu_about"android:orderInCategory="2"android:title="關(guān)于"/><itemandroid:id="@+id/menu_quit"android:orderInCategory="3"android:title="退出"/></menu>menu.add方法的參數(shù):
第一個(gè)int類(lèi)型的group
ID參數(shù),代表的是組概念,你可以將幾個(gè)菜單項(xiàng)歸為一組,以便更好的以組的方式管理你的菜單按鈕。
第二個(gè)int類(lèi)型的item
ID參數(shù),代表的是項(xiàng)目編號(hào)。這個(gè)參數(shù)非常重要,一個(gè)item
ID對(duì)應(yīng)一個(gè)menu中的選項(xiàng)。在后面使用菜單的時(shí)候,就靠這個(gè)
item
ID來(lái)判斷你使用的是哪個(gè)選項(xiàng)。
第三個(gè)int類(lèi)型的order
ID參數(shù),代表的是菜單項(xiàng)的顯示順序。默認(rèn)是0,表示菜單的顯示順序就是按照add的顯示順序來(lái)顯示。第四個(gè)String類(lèi)型的title參數(shù),表示選項(xiàng)中顯示的文字。public
boolean
onOptionsItemSelected(MenuItem
item){System.out.println("onOptionsItemSelected------>"+item.getOrder());return
true;}Android
的上下文菜單類(lèi)似于PC
上的右鍵菜單。當(dāng)為一個(gè)視圖注冊(cè)了上下文菜單之后,長(zhǎng)按(2
秒左右)這個(gè)視圖對(duì)象就會(huì)彈出一個(gè)浮動(dòng)菜單,即上下文菜單。如TextView注意:Android
的上下文菜單不支持圖標(biāo)或快捷鍵。1.
覆蓋Activity
的onCreateContenxtMenu()方法,調(diào)用Menu
的add
方法添加菜單項(xiàng)(MenuItem)。2.
覆蓋Activity
的onContextItemSelected()方法,響應(yīng)上下文菜單菜單項(xiàng)的單擊事件。3.setOnCreateContextMenuListener(this);為視圖注冊(cè)上下文菜單。注冊(cè)上下文菜單:TextView
tv
=
(TextView)this.findViewById(R.id.tv1);tv.setOnCreateContextMenuListener(this);設(shè)置菜單:public
void
onCreateContextMenu(ContextMenu
menu,
View
v,ContextMenuInfo
menuInfo){super.onCreateContextMenu(menu,
v,
menuInfo);menu.setHeaderTitle("Hello");menu.add(0,
3,
6,
"Delete");menu.add(0,
4,
1,
"Copy");}結(jié)果測(cè)試:public
boolean
onContextItemSelected(MenuItem
item)
{System.out.println("=========="+item.getItemId());System.out.println("==========="+item.getOrder());return
super.onContextItemSelected(item);}ListView用于以垂直列表方式顯示數(shù)據(jù)項(xiàng)ListView相關(guān)的三個(gè)主要接口和類(lèi)ListViewListActivityListAdapter聲明ListView布局文件聲明列表項(xiàng)的布局文件繼承Activity或ListActivity,覆蓋onCreate方法創(chuàng)建Adapter對(duì)象將Adapter對(duì)象設(shè)置給ListView進(jìn)行顯示<ListView
android:id="@+id/booklist"android:layout_height="wrap_content"android:layout_width="fill_parent"/>實(shí)現(xiàn)列表顯示。ListView通常有兩個(gè)職責(zé)。(1)將數(shù)據(jù)填充到布局。(2)處理用戶(hù)的選擇點(diǎn)擊等操作。ListView的創(chuàng)建需要3個(gè)元素。(1)ListView中的每一列的View。(2)填入View的數(shù)據(jù)。(3)連接數(shù)據(jù)與ListView的適配器。適配器是一個(gè)連接數(shù)據(jù)和ListView的橋梁,通過(guò)它能有效地實(shí)現(xiàn)據(jù)與ListView的分離設(shè)置,使ListView與數(shù)據(jù)的綁定更加簡(jiǎn)便,修改更加方便ArrayAdapter
aa
=
new
ArrayAdapter(this,android.R.layout.simple_list_item_1,list);lv.setAdapter(aa);lv.setOnItemClickListener(new
OnItemClickListener(){public
void
onItemClick(AdapterView<?>
arg0,
View
arg1,
int
arg2,long
arg3)
{System.out.println("============"+list.get(arg2));}});MyListViewAdapter
mlva
=
new
MyListViewAdapter(this,listStudent);lv.setAdapter(mlva);public
MyListViewAdapter(Context
context,
List<Student>
data)
{this.context
=
context;this.stuList
=
data;this.layoutInflater
=
LayoutInflater.from(context);}public
View
getView(int
position,
View
convertView,
ViewGroup
parent)
{convertView
=
layoutInflater.inflate(R.layout.listitem,
null);vh.image
=
(ImageView)
convertView.findViewById(R.id.tv_desc);vh.title
=
(TextView)
convertView.findViewById(R.id.tv_title);return
convertView;}public
View
getView(int
position,
View
convertView,ViewGroup
parent)
{convertView
=
layoutInflater.inflate(R.layout.listitem,
null);vh.title
=(TextView)
convertView.findViewById(R.id.tv_title);vh.title.setText(((Student)
stuList.get(position)).getStuTitle());return
convertView;}MyListViewAdatperGridView是以網(wǎng)格的形式排列所包含的內(nèi)容,每個(gè)單元格的內(nèi)容可以是任意一個(gè)View組件與ListView相同,GridView通過(guò)Adapter封裝后臺(tái)的數(shù)據(jù),必須調(diào)用setAdapter()方法將GridView和數(shù)據(jù)綁定GridView可以使用OnItemClickListener及OnItemSelectedListener監(jiān)聽(tīng)事件//準(zhǔn)備要添加的數(shù)據(jù)條目List<Map<String,
Object>>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 英文設(shè)備貸款合同模板
- 董事長(zhǎng)秘書(shū)助理崗位職責(zé)
- 九年級(jí)化學(xué)上冊(cè) 第三章 維持生命之氣-氧氣3.2 制取氧氣教案(新版)粵教版
- 八年級(jí)物理上冊(cè) 1.1《希望你喜愛(ài)物理》第1課時(shí)教案 (新版)粵教滬版
- 2024-2025學(xué)年七年級(jí)地理上冊(cè) 第三章 天氣與氣候 第二節(jié) 氣溫的變化與分布教案 (新版)新人教版
- 高中歷史 5.2 無(wú)產(chǎn)階級(jí)革命導(dǎo)師恩格斯教案2 新人教版選修4
- 2024年高中化學(xué) 第四章 電化學(xué)基礎(chǔ) 第一節(jié) 原電池教案 新人教版選修4
- 武術(shù)作業(yè)設(shè)計(jì)人教版八下初中二年級(jí)體育教學(xué)設(shè)計(jì)
- 船長(zhǎng)課件人教版
- 心電圖出科課件
- 煤礦消防安全管理制度范本
- 小學(xué)三年級(jí)六班上學(xué)期班主任家長(zhǎng)會(huì)課件
- 和易充智能充電系統(tǒng)(PPT課件)
- 30MW光伏項(xiàng)目送出系統(tǒng)工程施工組織總設(shè)計(jì)1
- 建筑抗震設(shè)計(jì)規(guī)范2010
- 100以?xún)?nèi)退位減法經(jīng)典實(shí)用
- HGO GNSS數(shù)據(jù)處理軟件
- (核電站)反應(yīng)堆棚和水補(bǔ)給系統(tǒng)(REA)
- 抗菌藥物使用強(qiáng)度整改的PDCA案例
- 昔日中國(guó)數(shù)學(xué)物理奧賽選手今何在
- 自來(lái)水廠(chǎng)操作規(guī)程手冊(cè)
評(píng)論
0/150
提交評(píng)論