Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > Mobile > Mobile Forum > Android - จะอ้างถึง (TextView) findViewById จากคลาสอื่นที่ไม่ได้ extends class Activity ได้อย่างไรค่ะ


[Mobile] Android - จะอ้างถึง (TextView) findViewById จากคลาสอื่นที่ไม่ได้ extends class Activity ได้อย่างไรค่ะ

 
Topic : 099622



โพสกระทู้ ( 2 )
บทความ ( 0 )



สถานะออฟไลน์



Code (Android-Java)
1.จะอ้างถึง (TextView) findViewById จากคลาสอื่นที่ไม่ได้ extends class Activity ได้อย่างไรค่ะ




Tag : Mobile, Android

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-08-26 15:59:48 By : chaaim2you View : 1643 Reply : 4
 

 

No. 1



โพสกระทู้ ( 65 )
บทความ ( 0 )



สถานะออฟไลน์


Code (Android-Java)
1.View v = getLayoutInflater().inflate(R.layout.mylayout, null);
2.TextView tv = (TextView )v.findViewById(R.id.tv1);

ของผมใช้ findviewตามlayout
ผิดพลาดประการใดขออภัยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-08-26 16:09:38 By : zFOLKz
 

 

No. 2



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ประมาณนั้นแหละครับ จะต้องอ้างถึงไฟล์ Layout ซะก่อน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-08-26 16:37:44 By : mr.win
 

 

No. 3



โพสกระทู้ ( 2 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 2 เขียนโดย : mr.win เมื่อวันที่ 2013-08-26 16:37:44
รายละเอียดของการตอบ ::
รบกวนช่วยแสดงค่าองศา(azimuth) ใน (Textview) ได้ไหมค่ะ

Code (Android-Java)
001.package com.iutinvg.compass;
002. 
003. 
004.import android.content.Context;
005.import android.hardware.Sensor;
006.import android.hardware.SensorEvent;
007.import android.hardware.SensorEventListener;
008.import android.hardware.SensorManager;
009.import android.util.Log;
010.import android.view.LayoutInflater;
011.import android.view.View;
012.import android.view.animation.Animation;
013.import android.view.animation.RotateAnimation;
014.import android.widget.ImageView;
015.import android.widget.TextView;
016. 
017.public class Compass implements SensorEventListener {
018.    private static final String TAG = "Compass";
019. 
020.         
021.    private SensorManager sensorManager;
022.    private Sensor gsensor;
023.    private Sensor msensor;
024.    private float[] mGravity = new float[3];
025.    private float[] mGeomagnetic = new float[3];
026.    private float azimuth = 0f;
027.    private float currectAzimuth = 0;
028.     
029.    // compass arrow to rotate
030.    public ImageView arrowView = null;
031.     
032.    TextView tv;
033.    public Compass(Context context) {
034.        sensorManager = (SensorManager) context
035.                .getSystemService(android.content.Context.SENSOR_SERVICE);
036.        gsensor = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
037.        msensor = sensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD);
038.        LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
039.        View v = inflater.inflate( R.layout.activity_compass, null );
040.        tv = (TextView )v.findViewById(R.id.textView1);
041.         
042.    }
043. 
044.     
045.    public void start() {
046.        sensorManager.registerListener(this, gsensor,
047.                SensorManager.SENSOR_DELAY_GAME);
048.        sensorManager.registerListener(this, msensor,
049.                SensorManager.SENSOR_DELAY_GAME);
050.    }
051. 
052.    public void stop() {
053.        sensorManager.unregisterListener(this);
054.    }
055. 
056.    private void adjustArrow() {
057.        if (arrowView == null) {
058.            Log.i(TAG, "arrow view is not set");
059.            return;
060.        }
061. 
062.        Log.i(TAG, "will set rotation from " + currectAzimuth + " to "
063.                + azimuth);
064. 
065.        Animation an = new RotateAnimation(-currectAzimuth, -azimuth,
066.                Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
067.                0.5f);
068.        currectAzimuth = azimuth;
069.         
070.        an.setDuration(500);
071.        an.setRepeatCount(0);
072.        an.setFillAfter(true);
073. 
074.        arrowView.startAnimation(an);
075.    }
076. 
077.    @Override
078.    public void onSensorChanged(SensorEvent event) {
079.         
080.                 
081.        final float alpha = 0.97f;
082.         
083.        synchronized (this) {
084.            if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
085. 
086.                mGravity[0] = alpha * mGravity[0] + (1 - alpha)
087.                        * event.values[0];
088.                mGravity[1] = alpha * mGravity[1] + (1 - alpha)
089.                        * event.values[1];
090.                mGravity[2] = alpha * mGravity[2] + (1 - alpha)
091.                        * event.values[2];
092. 
093.                // mGravity = event.values;
094. 
095.                // Log.e(TAG, Float.toString(mGravity[0]));
096.            }
097. 
098.            if (event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD) {
099.                // mGeomagnetic = event.values;
100. 
101.                mGeomagnetic[0] = alpha * mGeomagnetic[0] + (1 - alpha)
102.                        * event.values[0];
103.                mGeomagnetic[1] = alpha * mGeomagnetic[1] + (1 - alpha)
104.                        * event.values[1];
105.                mGeomagnetic[2] = alpha * mGeomagnetic[2] + (1 - alpha)
106.                        * event.values[2];
107.                // Log.e(TAG, Float.toString(event.values[0]));
108. 
109.            }
110. 
111.            float R[] = new float[9];
112.            float I[] = new float[9];
113.            boolean success = SensorManager.getRotationMatrix(R, I, mGravity,
114.                    mGeomagnetic);
115.            if (success) {
116.                float orientation[] = new float[3];
117.                SensorManager.getOrientation(R, orientation);
118.                // Log.d(TAG, "azimuth (rad): " + azimuth);
119.                azimuth = (float) Math.toDegrees(orientation[0]); // orientation
120.                azimuth = (azimuth + 360) % 360;
121.                 
122.                 
123.                 
124.                // Log.d(TAG, "azimuth (deg): " + azimuth);
125.                adjustArrow();
126.            }
127.        }
128.    }
129.     
130.     
131.    @Override
132.    public void onAccuracyChanged(Sensor sensor, int accuracy) {
133.        // TODO Auto-generated method stub
134.         
135.    }
136.}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-08-26 16:45:14 By : chaaim2you
 

 

No. 4



โพสกระทู้ ( 65 )
บทความ ( 0 )



สถานะออฟไลน์


Code (Android-Java)
1.tv.setText(azimuth);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-08-26 17:07:32 By : zFOLKz
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : Android - จะอ้างถึง (TextView) findViewById จากคลาสอื่นที่ไม่ได้ extends class Activity ได้อย่างไรค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่