ID 목록을 포함하는 스피너 (동적)가 있습니다. 각 ID에는 제품 값이 있습니다. 특정 ID를 클릭하면 해당 ID와 관련된 값을 변경해야합니다.android spinners를 사용하여 textview 값 변경
테이블이 포함 된 listView가 있습니다. 표는 제품 이름, 제품 가격 및 제품 정보로 구성됩니다. ID를 변경하면 표 정보 (목록보기)가 변경되지만 제품 값은 변경되지 않습니다 (이 항목은 텍스트보기이며 목록보기의 일부가 아닙니다).
다른 클래스의 인 텐트를 사용하여 제품 값을 전달 중입니다. 회 전자의 항목을 변경하면 제품 가치가 변경되는 것은 어떻게해야합니까?
/**
* Listener for flight leg selection of spinner
*/
private OnItemSelectedListener onFlightLegSelectedListener = new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
new ShowSalesReportAsyncTask(flightLegMap.get(flightLegs.get(position)), position).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// Do nothing
}
};
이것은 제품 가치를 얻는 나의 onCreate입니다.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sales_report);
salesReportListView = (ListView) findViewById(R.id.sales_report_listview);
spinnerFlightLegs = (Spinner) findViewById(R.id.flight_legs);
noTransactionsWarning = (TextView) findViewById(R.id.no_transactions_warning);
totalValueNetAmount = (TextView) findViewById(R.id.total_currency_net_value);
String salesRevenue = TOTAL_VALUE;
Bundle extras = getIntent().getExtras();
if (extras != null) {
salesRevenue = extras.getString(TOTAL_VALUE);
}
totalValueNetAmount.setText(salesRevenue);
flightLegMap = getAllFlightLegs();
if (!flightLegMap.isEmpty()) {
setFlightLegSpinner();
btnShare.setEnabled(true);
} else {
btnShare.setEnabled(false);
}
spinnerFlightLegs.setOnItemSelectedListener(onFlightLegSelectedListener);
salesReportListAdapter = new SalesReportListAdapter(this);
salesReportListView.setAdapter(salesReportListAdapter);
데이터보기로 채우는 데 사용하는 비동기 작업입니다.
개인 클래스 ShowSalesReportAsyncTask은 AsyncTask를 확장> {
private String flightLeg;
private int position;
public ShowSalesReportAsyncTask(String flightLeg, int position) {
this.flightLeg = flightLeg;
this.position = position;
}
@Override
protected List<Purchase> doInBackground(Void... params) {
List<Purchase> rows = new ArrayList<Purchase>();
PurchaseDao purchaseDao = new PurchaseDao(flightLeg, MIUtils.getShardDatabaseIndexMap());
LOG.debug(TAG + "Getting report for : {}", flightLeg);
// double netTotal = SalesUtil.calculateFlightTransactionTotal(purchaseDao, refundDao,());
return purchaseDao.getSuccessfulTransactions();
}
@Override
protected void onPostExecute(List<Purchase> result) {
super.onPostExecute(result);
if (!result.isEmpty()) {
noTransactionsWarning.setVisibility(View.GONE);
} else {
noTransactionsWarning.setVisibility(View.VISIBLE);
}
salesReportListAdapter.setRowsAndFlightDetails(result, flightLegMap.get(flightLegs.get(position)),
spinnerFlightLegs.getSelectedItem().toString());
totalValueNetAmount.setText((int) netTotal);
}
}
변경해야 "EUR"입니다 아이템입니다. SPINNER TABLE IMAGE
제품의 가치는 무엇인가 -
이 더 나은 귀하의 질문에 대답해야합니까? EUR 98.00? –
값을 인쇄/기록 했습니까? 무엇이 인쇄됩니까? Null 또는 빈칸? –
제품 가치는 EUR 98.00입니다. 회 전자를 변경하면 새로운 제품 가치가 표시되지만 대신 98.00 – punit1337