Android 如何在截击中传递旋转球值

Android 如何在截击中传递旋转球值,android,json,django-rest-framework,android-volley,android-spinner,Android,Json,Django Rest Framework,Android Volley,Android Spinner,我正在使用Volley向Django服务器发布json对象 { "name": "A", "joined":true, "description":"Info", "status":"F", } 我的微调器由该值组成,用于从用户获取状态输入 <array name="status"> <item>Free</item> <item>Busy</item> </array>

我正在使用
Volley
向Django服务器发布
json对象

{
"name": "A",
"joined":true,
"description":"Info",
"status":"F",
}  
我的微调器由该值组成,用于从用户获取状态输入

<array name="status">
        <item>Free</item>
        <item>Busy</item>
    </array>  

自由的
忙吗?

如果选择的微调器值是自由的,我需要在我的Json对象中将状态发布为F。如何读取微调器值以及基于所选位置如何发布此
Json
对象?

使用微调器的
OnItemSelectedListener
,然后写在代码行下方

这样做:-

String item =spinner.getItemSelected.toString()

对微调器使用
OnItemSelectedListener
,然后在代码行下方写下

这样做:-

String item =spinner.getItemSelected.toString()
试试这个

        JSONObject object= new JSONObject();
        try {
            object.put("name","A");
            object.put("joined",true);
            object.put("description","description");
            if(spinner.getItemSelected.toString().equals("Free")){
                object.put("status","F");
            }else {
                object.put("status","S");
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
试试这个

        JSONObject object= new JSONObject();
        try {
            object.put("name","A");
            object.put("joined",true);
            object.put("description","description");
            if(spinner.getItemSelected.toString().equals("Free")){
                object.put("status","F");
            }else {
                object.put("status","S");
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
试试这个:

若您使用contains方法,当字符串为Fire、Forest等时,它可能为false…word包含F

    if(spinner.getItemSelected.toString().equalsIgnoreCase("Free")) { 
        // set "status" F to json
    }
    else {
        // set "status" B to json
    }
试试这个:

若您使用contains方法,当字符串为Fire、Forest等时,它可能为false…word包含F

    if(spinner.getItemSelected.toString().equalsIgnoreCase("Free")) { 
        // set "status" F to json
    }
    else {
        // set "status" B to json
    }

从微调器获取选定文本的代码

String text = spinner.getSelectedItem().toString();  // This will give you "FREE"
从字符串中获取第一个字符的代码

text = text.subString(0,1);  // This will return first character "F"

从微调器获取选定文本的代码

String text = spinner.getSelectedItem().toString();  // This will give you "FREE"
从字符串中获取第一个字符的代码

text = text.subString(0,1);  // This will return first character "F"
私有void SubmitData() {

String item=spinner.getItemSelected.toString()
StringRequest StringRequest=新的StringRequest(Request.Method.POST,url,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应)
{
最终字符串结果=response.toString().trim();
Log.d(“响应”,“结果:+result);//当响应到来时,我将记录它
}
},
新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误)
{
错误。printStackTrace();
error.getMessage();//当出现错误时,我将记录它
}
}
)
{
@凌驾
受保护的映射getParams()引发AuthFailureError{
Map params=新的HashMap();
参数put(“项目”,项目);
返回参数;
}
};
Vconnection.getnInstance(this.addRequestQue(stringRequest);//用于连接截击的Vconnection i claas
}
Vconnection类代码

public class Vconnection {

private static Vconnection nInstance;

private RequestQueue RQ;

private Context CTX;

private Vconnection(Context context)
{
    CTX=context;
    RQ=getRequestQue();
}

public RequestQueue getRequestQue()
{
    if(RQ==null)
    {
        RQ= Volley.newRequestQueue(CTX.getApplicationContext());
    }
    return RQ;
}
public static synchronized Vconnection getnInstance(Context context)
{
    if(nInstance==null)
    {
        nInstance=new Vconnection(context);
    }
    return nInstance;
}
public <T> void addRequestQue(Request<T> request)
{
    RQ.add(request);
}
公共类Vconnection{
专用静态连接实例;
专用请求队列RQ;
私有上下文CTX;
专用Vconnection(上下文)
{
CTX=上下文;
RQ=getRequestQue();
}
公共请求队列getRequestQueue()
{
如果(RQ==null)
{
RQ=Volley.newRequestQueue(CTX.getApplicationContext());
}
返回RQ;
}
公共静态同步Vconnection getnInstance(上下文)
{
如果(n实例==null)
{
n实例=新的Vconnection(上下文);
}
返回实例;
}
公共无效addRequestQue(请求)
{
RQ.添加(请求);
}
}

私有void SubmitData() {

String item=spinner.getItemSelected.toString()
StringRequest StringRequest=新的StringRequest(Request.Method.POST,url,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应)
{
最终字符串结果=response.toString().trim();
Log.d(“响应”,“结果:+result);//当响应到来时,我将记录它
}
},
新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误)
{
错误。printStackTrace();
error.getMessage();//当出现错误时,我将记录它
}
}
)
{
@凌驾
受保护的映射getParams()引发AuthFailureError{
Map params=新的HashMap();
参数put(“项目”,项目);
返回参数;
}
};
Vconnection.getnInstance(this.addRequestQue(stringRequest);//用于连接截击的Vconnection i claas
}
Vconnection类代码

public class Vconnection {

private static Vconnection nInstance;

private RequestQueue RQ;

private Context CTX;

private Vconnection(Context context)
{
    CTX=context;
    RQ=getRequestQue();
}

public RequestQueue getRequestQue()
{
    if(RQ==null)
    {
        RQ= Volley.newRequestQueue(CTX.getApplicationContext());
    }
    return RQ;
}
public static synchronized Vconnection getnInstance(Context context)
{
    if(nInstance==null)
    {
        nInstance=new Vconnection(context);
    }
    return nInstance;
}
public <T> void addRequestQue(Request<T> request)
{
    RQ.add(request);
}
公共类Vconnection{
专用静态连接实例;
专用请求队列RQ;
私有上下文CTX;
专用Vconnection(上下文)
{
CTX=上下文;
RQ=getRequestQue();
}
公共请求队列getRequestQueue()
{
如果(RQ==null)
{
RQ=Volley.newRequestQueue(CTX.getApplicationContext());
}
返回RQ;
}
公共静态同步Vconnection getnInstance(上下文)
{
如果(n实例==null)
{
n实例=新的Vconnection(上下文);
}
返回实例;
}
公共无效addRequestQue(请求)
{
RQ.添加(请求);
}

}

如果使用contains方法,则当字符串为
“Fire”
“FREST”
等时,该方法可能为false

if(spinner.getItemSelected.toString().equalsIgnoreCase("Free")) { 
    // set "status" F to json
}
else
    // set "status" B to json

如果使用contains方法,则当字符串为
“Fire”
“Forest”
等时,该方法可能为false

if(spinner.getItemSelected.toString().equalsIgnoreCase("Free")) { 
    // set "status" F to json
}
else
    // set "status" B to json

所以,您只想将微调器的第一个字符发送到服务器?
String text=spinner.getSelectedItem().toString()将给出选定的文本。您必须实现OnItemSelectedListener…这个问题似乎太广泛,而且标记太多。想问一个精确的问题。是的,我只想发送First CharacterSo,你想把SPEnter的第一个字符只发送给服务器?<代码> String Text=SPNLID.GETSCORDETITITEM().toString();代码>将给出选定的文本。您必须实现OnItemSelectedListener…这个问题似乎太广泛,而且标记太多。考虑一个精确的问题。是的,我只想先发送。Character@Zaphod他只有两个元素,其中只有一个元素包含F。。检查问题!!:)这是我的荣幸suggestion@Zaphod他只有两个元素,其中只有一个元素包含F。。检查问题!!:)我赞成这个建议