如何给datagrid中的editor,mini-spinner添加事件

如何给datagrid中的editor,mini-spinner添加事件,第1张

建议你监听单元格编辑完成事件 oncellendedit

然后通过grid.updateRow(row,{price:"200"})

我监听onvaluechanged事件了

以前少加了个"on",所以没监听到!

var spinnerPrice = e.sender

var price= grid.getEditorOwnerRow(spinnerPrice).price

typeSpinner.setOnItemSelectedListener(new

OnItemSelectedListener()

{

@Override

public

void

onItemSelected(AdapterView<?>

parent,

View

view,

int

position,

long

id)

{

if

(position

==

1

||

position

==

2)

{

date_text.setVisibility(View.GONE)

et_date.setVisibility(View.GONE)

btn_date.setVisibility(View.GONE)

}

else

{

date_text.setVisibility(View.VISIBLE)

et_date.setVisibility(View.VISIBLE)

btn_date.setVisibility(View.VISIBLE)

}

}

你看你选择的是第几项。

就跳转啊。

至于数据

跳转界面是Intent,

Intent附带数据就可以了

/*实现到支付宝和银联界面的跳转并从两个界面传值*/

public class MainActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener {

Intent intent

private int requestCode

private Spinner sp

private String[] data

private TextView tv

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState)

setContentView(R.layout.activity_main)

initData()

initView()

}

/**

*处理组件的方法

*/

private void initView() {

tv = ((TextView) findViewById(R.id.tv))

//需要适配的View,是"v"

sp = ((Spinner) findViewById(R.id.sp))

//接下来是创建MVC中的"c" controler

ArrayAdapter<String>adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,data)

sp.setAdapter(adapter)

sp.setOnItemSelectedListener(this)

}

private void initData() {//初始化数据

data = new String[]{"请选择","支付宝","银联"}

}

/*

*处理从银联和支付宝返回数据的方法

*/

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data)

if (222==requestCode&&resultCode==999){

//说明是从银联页面返回了,读取intent携带的信息

int money=data.getIntExtra("money",0)

tv.setText("付款金额:"+money+"元")

}else if (111==requestCode&&resultCode==888){

//说明是从支付宝页面返回了,读取intent携带的信息

int money=data.getIntExtra("money",0)

int privilege=data.getIntExtra("privilege",0)

tv.setText("付款金额:"+money+"元,优惠金额:"+privilege+"元")

}

}

/*spinner被点击事件的处理*/

@Override

public void onItemSelected(AdapterView<?>parent, View view, int position, long id) {

String str=sp.getSelectedItem().toString()

if ("支付宝".equals(str)){

intent=new Intent(this,ZhifubaoActivity.class)

requestCode=111

}else if ("银联".equals(str)){

intent=new Intent(this,YinlianActivity.class)

requestCode=222

}else {

return

}

//如果不需要跳转的页面返回值,下面可以直接用startActivity(intent)

startActivityForResult(intent, requestCode)

}

@Override

public void onNothingSelected(AdapterView<?>parent) {

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11388820.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存